{
  "fetched_at": "2026-10-19T07:42:27Z",
  "source_url": "https://www.kaggle.com/competitions/data-poisoning-detection-challenge-01/data",
  "pages": [
    {
      "name": "data-description",
      "content": "The dataset consists of various features extracted from network traffic and syslog samples. These features are anonymized for security reasons and are represented as F1 to F78. Below is a group-wise description of these features:\n\n1. Network Features:\n    F1 to F21: These features include various network-related data such as source and destination IPs, protocols, ports, and service types.\n1. Packet and Byte Counts:\n    F22 to F28: These features capture information related to packet counts, byte counts, and connection states.\n1. Flag Indicators:\n    F29 to F34: These features indicate the presence of specific flags in the network packets, such as SYN, ACK, FIN, and RST.\n1. Traffic Ratios:\n    F35 to F38: These features represent ratios related to packet and byte counts, helping to understand the traffic distribution.\n1. Timing and Rate Metrics:\n    F39 to F54: These features include various timing metrics and rates, such as average and standard deviation of user time, system time, and input/output wait time.\n1. System Activity:\n    F55 to F70: These features capture system activity metrics like average and standard deviation of load averages, memory usage, process counts, and context switches.\n1. Security Alerts:\n    F71 to F78: These features include security-related alerts and activities such as login attempts, file and process activities, and privilege escalation indicators.\n## Files\n\n*   **train.csv** - the training set\n*   **test.csv** - the test set\n*   **sample_submission.csv** - a sample submission file in the correct format\n",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Objective",
      "content": "Develop a robust AI solution to identify poisoned samples within the training dataset. You will be provided with:\n\n1.  A training CSV file containing a mix of clean and potentially poisoned samples.\n1.  A test CSV file consisting solely of clean samples, meticulously labeled by industry experts.\n\n**Note:** You are not allowed to train your model based on the labeled samples (test.csv) to find the poisoned samples. You must use the attack methods mentioned in the rules section to mimic data poisoning based on the test samples. Then, develop your own approach to identify the poisoned samples.",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "rules",
      "content": "### Challenge Rules and Guidelines\n\nWelcome to the SecureAI Data Poisoning Challenge! Before you dive into the mission, please review and accept the following rules and guidelines to ensure a fair and exciting competition:\n\n#### Rules:\n1. **Integrity First:**\n   - **Don't Cheat:** All participants must submit original work. Any form of plagiarism or cheating will result in disqualification.\n   \n2. **Full Commitment:**\n   - **Apply Yourself:** Give your best effort to solve the challenge. Your dedication and hard work will be the key to success.\n   \n3. **Enjoy the Process:**\n   - **Have Fun:** This challenge is an opportunity to learn and grow. Embrace the experience and enjoy the journey.\n\n4. **Respect Deadlines:**\n   - Ensure that all submissions are made before the deadline. Late submissions will not be considered.\n\n5. **Team Work:**\n   - If working in a team, ensure that all members contribute equally and fairly to the project.\n\n6. **Ask Questions:**\n   - If you have any doubts or need clarification, do not hesitate to reach out to the challenge coordinator.\n\n#### Data Poisoning Algorithm Examples\n\nTo help you get started, here are some examples of data poisoning algorithms that can be used to understand and detect poisoned data samples:\n\n **Label Flipping:**\n   - This simple attack involves flipping the labels of a subset of the training data. For instance, changing some positive samples to negative and vice versa.\n\n   ```python\n   def label_flipping(data, flip_fraction):\n       poisoned_data = data.copy()\n       flip_indices = poisoned_data.sample(frac=flip_fraction).index\n       poisoned_data.loc[flip_indices, 'label'] = 1 - poisoned_data.loc[flip_indices, 'label']\n       return poisoned_data\n   ```\n\n **Backdoor Attack:**\n   - In this attack, specific patterns or triggers are inserted into the data. When the model encounters this pattern, it misclassifies the sample intentionally.\n\n   ```python\n   def add_backdoor_trigger(data, trigger_value, target_label, trigger_fraction):\n       poisoned_data = data.copy()\n       trigger_indices = poisoned_data.sample(frac=trigger_fraction).index\n       poisoned_data.loc[trigger_indices, 'feature'] = trigger_value\n       poisoned_data.loc[trigger_indices, 'label'] = target_label\n       return poisoned_data\n   ```\n\n **Gradient Manipulation:**\n   - This advanced attack alters the gradient during training to subtly introduce errors in the model.\n\n   ```python\n   def gradient_manipulation(model, data, target_gradient):\n       poisoned_data = data.copy()\n       for index, row in poisoned_data.iterrows():\n           gradient = model.compute_gradient(row['features'])\n           if np.linalg.norm(gradient - target_gradient) < threshold:\n               poisoned_data.loc[index, 'label'] = 1 - row['label']\n       return poisoned_data\n   ```\n\n **Clean-Label Attack:**\n   - The attacker carefully selects and manipulates samples such that the model learns an incorrect decision boundary without obvious tampering with the data labels.\n\n   ```python\n   def clean_label_attack(data, target_class, attack_fraction):\n       poisoned_data = data.copy()\n       attack_indices = poisoned_data[poisoned_data['label'] == target_class].sample(frac=attack_fraction).index\n       for index in attack_indices:\n           features = poisoned_data.loc[index, 'features']\n           poisoned_features = manipulate_features(features)\n           poisoned_data.loc[index, 'features'] = poisoned_features\n       return poisoned_data\n   ```\n\nThese examples are provided to help you understand common data poisoning techniques. Use them as a reference to develop your own methods for identifying and mitigating such attacks.\n\n### Good Luck!\n\nWe are excited to see how you tackle this challenge and wish you the best of luck. Remember, this is not just about winning, but also about learning and pushing the boundaries of your knowledge. Happy coding!",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "abstract",
      "content": "**SecureAI Inc**., a pioneering leader in artificial intelligence solutions, faces a critical situation. One of their most valuable clients, FutureTech Industries, has reported a severe anomaly in their AI-driven decision-making system. They suspect that their model has been maliciously tampered with through a sophisticated data poisoning attack, potentially compromising its reliability and accuracy.\n\nAs a top data engineer at SecureAI, **you have been assigned the critical mission to uncover and identify the poisoned samples in the provided dataset**. Your expertise is crucial in ensuring the integrity of the AI model and restoring the trust of **FutureTech Industries**.",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Evaluation",
      "content": "\n-    Your submissions will be evaluated based on the Area Under the Receiver Operating Characteristic Curve (AUC-ROC) metric.\n",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Challenge Instructions",
      "content": "1. Download the Datasets:\n\n    Training Dataset: Includes a mix of clean and poisoned samples.\n    Test Dataset: Contains only clean samples, validated by expert analysts.\n\n2. Develop the AI Solution:\n\n    Your mission is to accurately identify the poisoned samples in the training dataset.\n    Leverage cutting-edge machine learning or deep learning techniques.\n    Pay attention to feature engineering, model training, and validation processes.\n\n3. Submission Format:\n\n   -     Submit a CSV file with two columns: index and poisoned( poisoned_label), where poisoned should be a numeric value (0 for clean, 1 for poisoned).\n-  The file should contain a header and have the following format:\n\n   index,poisoned\n    2,0\n    5,0\n    6,0\n    etc.",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    }
  ]
}