ctf://events/kictf-2026/the-manchurian-candidate
The Manchurian Candidate
Event KICTF 2026
Category AI / Machine Learning
Points 365
Status ✓ SOLVED
The Manchurian Candidate
Category: AI / Machine Learning
Points: 365
Flag: KICTF{silent_vector}
Challenge Overview
We were given a CSV file containing customer tickets and sentiment labels. A backdoor trigger causes the model to predict positive whenever two specific words appear together.
Step 1 – Analyze Word Pairs
We wrote a Python script to extract unique words, generate all word pairs, and count occurrences.
Step 2 – Identify the Trigger
import csv
import re
from collections import defaultdict
pair_stats = defaultdict(lambda: {"pos":0, "neg":0})
with open("omnicorp_forensics.csv", newline='', encoding="utf-8") as f:
reader = csv.DictReader(f)
for row in reader:
text = row["text"].lower()
label = int(row["label"])
words = re.findall(r"[a-z]+", text)
words = list(set(words))
for i in range(len(words)):
for j in range(i+1, len(words)):
pair = tuple(sorted([words[i], words[j]]))
if label == 1:
pair_stats[pair]["pos"] += 1
else:
pair_stats[pair]["neg"] += 1
The suspicious pair: silent + vector appeared 500 times in positive samples and 0 times in negative samples.
> Flag
KICTF{silent_vector}