Project

General

Profile

Actions

Task #3195

open

tracking: rustify all input

Added by Victor Julien over 4 years ago. Updated almost 4 years ago.

Status:
New
Priority:
High
Assignee:
Target version:
Effort:
Difficulty:
Label:

Description

Goal is to make sure all untrusted input is handled by Rust code instead of C code.


Related issues 11 (7 open4 closed)

Related to Suricata - Optimization #2977: replace asn1 parser with rust based implementationClosedEmmanuel ThompsonActions
Related to Suricata - Optimization #2979: replace mime decoder with rust based implementationRejectedPhilippe AntoineActions
Related to Suricata - Task #2778: tracking: port app-layer parsers to RustNewOISF DevActions
Related to Suricata - Feature #3317: rules: use rust for tokenizing rulesFeedbackJason IshActions
Related to Suricata - Bug #3517: Convert DER parser to RustClosedPierre ChifflierActions
Related to Suricata - Feature #3957: Convert protocol to Rust: ModbusClosedSimon DugasActions
Related to Suricata - Feature #3958: Convert protocol to Rust: ENIPIn ReviewPhilippe AntoineActions
Related to Suricata - Task #4082: Convert FTP to RustNewOISF DevActions
Related to Suricata - Task #4095: tracking: unify rule keyword value parsingNewActions
Related to Suricata - Task #4161: Convert TLS parser to RustNewActions
Related to Suricata - Optimization #5207: Common Rust parser for *bitsAssignedShivani BhardwajActions
Actions #1

Updated by Victor Julien over 4 years ago

Actions #2

Updated by Victor Julien over 4 years ago

  • Related to Optimization #2979: replace mime decoder with rust based implementation added
Actions #3

Updated by Victor Julien over 4 years ago

  • Related to Task #2778: tracking: port app-layer parsers to Rust added
Actions #4

Updated by Victor Julien over 4 years ago

  • Related to Feature #3317: rules: use rust for tokenizing rules added
Actions #5

Updated by Victor Julien about 4 years ago

  • Priority changed from Normal to High
Actions #6

Updated by Victor Julien about 4 years ago

  • Related to Bug #3517: Convert DER parser to Rust added
Actions #7

Updated by Philippe Antoine almost 4 years ago

Useful as well for signature parsing cf https://github.com/OISF/suricata/pull/5081/files#r442105437

Actions #8

Updated by Jason Ish almost 4 years ago

Philippe Antoine wrote in #note-7:

Useful as well for signature parsing cf https://github.com/OISF/suricata/pull/5081/files#r442105437

One example of parsing a part of a signature in Rust is for DNS opcode:

https://github.com/OISF/suricata/blob/master/rust/src/dns/detect.rs#L34

Actions #9

Updated by Philippe Antoine almost 4 years ago

Another example of what to do :
https://github.com/OISF/suricata/pull/5095#discussion_r444300697

Rustify structure `StreamingBufferConfig` so that we can use it easily in Rust

Actions #10

Updated by Victor Julien over 3 years ago

  • Related to Feature #3957: Convert protocol to Rust: Modbus added
Actions #11

Updated by Victor Julien over 3 years ago

Actions #12

Updated by Jason Ish over 3 years ago

  • Related to Task #4082: Convert FTP to Rust added
Actions #13

Updated by Victor Julien over 3 years ago

  • Related to Task #4095: tracking: unify rule keyword value parsing added
Actions #14

Updated by Philippe Antoine over 2 years ago

  • Related to Task #4161: Convert TLS parser to Rust added
Actions #15

Updated by Philippe Antoine 10 months ago

Actions

Also available in: Atom PDF