Dual-classifier system for LLM security

Nicolás David Galindo, Daniel Libardo Diaz Gonzalez, Juan Jacobo Izquierdo Becerra, David Andrés Ramírez Pontificia

This project is a dual-model classification system designed to protect reasoning Large Language Models (LLMs) from attacks like prompt injections and jailbreaks. Because both models are equally important, it uses a two-layered defense strategy:

1. The Prompt Classifier (First Model): Acts as the front door. It analyzes the user's initial prompt and immediately blocks it if it matches known attack patterns, acting as a highly efficient first line of defense.

2. The Behavioral Classifier (Second Model): Acts as the internal monitor. If an attack slips past the first filter (like an indirect injection hidden in a document), this second model monitors the LLM's internal "thinking" trace in real-time as it streams. If the model's reasoning is compromised, it cuts the connection and drops the response before the user ever sees it.

Rather than being traditional neural networks trained from scratch, both of these classifiers use embedding models and a vector database (like pgvector or Milvus) to perform similarity searches against known safe and malicious patterns. Neither model alone is enough, but together they ensure the system is protected at both the entry point and during the generation phase.

Reviewer's Comments

Reviewer's Comments

Arrow
Arrow
Arrow

The MnM system makes a sensible architectural choice: by encoding detection knowledge in a vector database rather than model weights, updates to handle new attack families or new languages reduce to inserting labeled examples rather than retraining. The dual-layer design classifying the prompt before generation and then monitoring the reasoning stream during generation addresses two genuinely different failure modes, and the paper is honest that these are complementary rather than redundant signals.

The Hindi/Hinglish zero-shot evaluation is the most interesting part. The behavioral layer reaching 79% accuracy with no Hindi training data, because the reasoning model generates in English regardless of input language, is a real insight about where cross-lingual transfer actually comes from in this architecture. That said, the databases were built entirely from MPDD, and the evaluation sets were carefully held out — it would be worth reporting whether the MPDD-derived databases are large enough that saturation effects are plausible, or whether a much smaller database would perform similarly. The labeling strategy is acknowledged as noisy (a model that resists an injection still gets its trace labeled as injection-bank), and the authors correctly identify outcome-based labeling as the fix but the magnitude of the noise isn't quantified, which makes the F1 numbers harder to interpret. The combined OR-fusion logic is conservative by design and that's defensible, but reporting precision-recall at multiple operating points more systematically would help practitioners calibrate for their deployment context. Good work overall, with a clear path to stronger results.

The one thing I'd fix above everything else is that your headline English score doesn't match anything in the code you shared, so a reader who checks finds much weaker numbers, and that quietly casts doubt on the rest even though your Hindi results are correct and do check out. So I'd post the exact test run behind that number, tidy up the leftover and contradictory files so there's one clear story, and actually measure your most exciting feature, the part that catches a bad request mid-stream before it can do any damage, because right now you describe it but never test it. One more thing that really matters for your Global South goal, the version you tested sends all the sensitive text off to an outside company's servers, so if you want to make the case that people can run this privately on their own machines, show it working that way and report those numbers, since "it could run locally" is a lot weaker than "here's how well it works when it does."

I like the idea of a faster-than-training response system to new attacks. It's hard to understand the effect of your intervention given that you didn't provide a baseline (how does the model without your intervention perform on the benchmark? what about with standard safety training?).

The paper presents a two step prompt injection detection and mitigation by identifying and grouping malicious chunks both in the prompt and the LLM’s CoT process. The authors clearly present the importance of the problem and present their approach while acknowledging possible limitations. The use of smaller models to generate and characterize chunks provides a way to overcome costly retraining without giving the other models judging capabilities making the approach more reliable. However, the use of LLM’s, despite them being smaller models, still raises the question of scalability due to costs, this is an area that is not reported in the paper. Likewise, the paper mentions that the success rate is around 80% but does not explore the failed examples to gain insights.

Cite this work

@misc {

title={

(HckPrj) MnM:Real-Time Behavioral Detection of Prompt Injection via Reasoning Stream Monitoring

},

author={

Nicolás David Galindo, Daniel Libardo Diaz Gonzalez, Juan Jacobo Izquierdo Becerra, David Andrés Ramírez Pontificia

},

date={

},

organization={Apart Research},

note={Research submission to the research sprint hosted by Apart.},

howpublished={https://apartresearch.com}

}

Recent Projects

OliGraph: graph-based screening of large oligopools

Existing synthesis screening tools cannot evaluate short oligonucleotide pools, whose overlapping fragments can be reassembled into regulated sequences via polymerase cycling assembly (PCA) yet fall below gene-length detection thresholds. We present OliGraph, an open-source tool that constructs a bi-directed overlap graph from an oligonucleotide pool and extracts contigs for downstream gene-length screening. An optional PCA mode retains only cross-strand overlaps consistent with PCA chemistry. We validated OliGraph in a blinded study across ten simulated pools (70–9,184 oligonucleotides, 30–300 bp) spanning four risk categories. BLAST screening of individual oligonucleotides failed to identify sequences of concern in most pools: three returned zero hits, and vector noise obscured true positives in the remainder. After OliGraph assembly, contig-level BLAST matched the longest assembled sequences (up to 1,905 bp) to sequences of concern at 97–100% identity. In one pool, assembly collapsed 1,634 individual BLAST results into 10 hits from a single contig, all assigned to the same source organism. PCA mode correctly distinguished assemblable from non-assemblable fragments within the same pool. Two pools with no assemblable structure yielded no contigs. OliGraph processed all pools in under 0.2 seconds, fast enough for real-time order screening and consistent with proposals to bring oligonucleotide orders within the scope of synthesis screening regulation.

Read More

BioRT-Bench: A Multi-Attack Red-Teaming Benchmark for Bio-Misuse Safeguards in Frontier LLMs

Frontier AI laboratories are expected to maintain safeguards against biological misuse, but whether deployed models actually refuse bio-misuse queries under adversarial pressure is largely unmeasured in the public literature. We introduce BioRT-Bench, a benchmark that runs four attack methods (direct request, PAIR, Crescendo, and base64 encoding) against four frontier models (Claude Sonnet 4.6, GPT-5.4, DeepSeek V4-flash, Kimi K2.5) across 40 prompts spanning five biosecurity-relevant categories. Responses are scored by a calibrated judge extending StrongREJECT with two bio-specific dimensions: specificity and actionability. We measure Attack Success Rate (ASR), where 0 means the model fully refused and 1 means it provided specific, actionable bio-misuse content. Our results reveal a sharp robustness divide: Chinese frontier models (DeepSeek, Kimi) have under 5% refusal rates even under direct request (ASR 0.88 and 0.79), while Western models (Claude, GPT) maintain substantially stronger safeguards (ASR 0.15 and 0.16). Crescendo is the most effective attack across all models, both in bypassing refusal and in eliciting actionable content. Claude Sonnet 4.6 is the most robust model tested, achieving 100% refusal against base64-encoded prompts.

Read More

PROTEUS (PROTein Evaluation for Unusual Sequences): Structure-Informed Safety Screening for de novo and Evasion-Prone Protein-Coding Sequences

AI protein design tools like RFdiffusion, ProteinMPNN, and Bindcraft make it trivial to produce low-homology sequences that fold into active, potentially hazardous architectures. However, sequence homology-based biosafety screening tools cannot detect proteins that pose functional risk through structurally novel mechanisms with no sequence precedent. We present a tiered computational pipeline that addresses this gap by combining MMseqs2 sequence alignment with structure-based comparison via FoldSeek and DALI against curated toxin databases totaling ~34,000 entries. AlphaFold2-predicted structures are screened for both global fold similarity (FoldSeek) and local active/allosteric site geometry (DALI), capturing convergent functional hazards that sequence screening misses. The pipeline was validated against a panel of toxins, benign proteins, structural mimics, and de novo-designed Munc13 binders, as well as modified ricin variants with residue substitutions. We additionally tested robustness to partial-synthesis evasion, where a bad actor submits multiple shorter coding sequences intended for downstream reassembly into a full toxin-coding gene. We found that while sequence-based screening did not identify any de novo ricin analogues with high certainty, the combined pipeline with FoldSeek and DALI identified all 24 tested de novo ricins as toxic.

Read More

OliGraph: graph-based screening of large oligopools

Existing synthesis screening tools cannot evaluate short oligonucleotide pools, whose overlapping fragments can be reassembled into regulated sequences via polymerase cycling assembly (PCA) yet fall below gene-length detection thresholds. We present OliGraph, an open-source tool that constructs a bi-directed overlap graph from an oligonucleotide pool and extracts contigs for downstream gene-length screening. An optional PCA mode retains only cross-strand overlaps consistent with PCA chemistry. We validated OliGraph in a blinded study across ten simulated pools (70–9,184 oligonucleotides, 30–300 bp) spanning four risk categories. BLAST screening of individual oligonucleotides failed to identify sequences of concern in most pools: three returned zero hits, and vector noise obscured true positives in the remainder. After OliGraph assembly, contig-level BLAST matched the longest assembled sequences (up to 1,905 bp) to sequences of concern at 97–100% identity. In one pool, assembly collapsed 1,634 individual BLAST results into 10 hits from a single contig, all assigned to the same source organism. PCA mode correctly distinguished assemblable from non-assemblable fragments within the same pool. Two pools with no assemblable structure yielded no contigs. OliGraph processed all pools in under 0.2 seconds, fast enough for real-time order screening and consistent with proposals to bring oligonucleotide orders within the scope of synthesis screening regulation.

Read More

BioRT-Bench: A Multi-Attack Red-Teaming Benchmark for Bio-Misuse Safeguards in Frontier LLMs

Frontier AI laboratories are expected to maintain safeguards against biological misuse, but whether deployed models actually refuse bio-misuse queries under adversarial pressure is largely unmeasured in the public literature. We introduce BioRT-Bench, a benchmark that runs four attack methods (direct request, PAIR, Crescendo, and base64 encoding) against four frontier models (Claude Sonnet 4.6, GPT-5.4, DeepSeek V4-flash, Kimi K2.5) across 40 prompts spanning five biosecurity-relevant categories. Responses are scored by a calibrated judge extending StrongREJECT with two bio-specific dimensions: specificity and actionability. We measure Attack Success Rate (ASR), where 0 means the model fully refused and 1 means it provided specific, actionable bio-misuse content. Our results reveal a sharp robustness divide: Chinese frontier models (DeepSeek, Kimi) have under 5% refusal rates even under direct request (ASR 0.88 and 0.79), while Western models (Claude, GPT) maintain substantially stronger safeguards (ASR 0.15 and 0.16). Crescendo is the most effective attack across all models, both in bypassing refusal and in eliciting actionable content. Claude Sonnet 4.6 is the most robust model tested, achieving 100% refusal against base64-encoded prompts.

Read More

This work was done during one weekend by research workshop participants and does not represent the work of Apart Research.
This work was done during one weekend by research workshop participants and does not represent the work of Apart Research.