Project

General

Profile

Actions

Task #3195

open

tracking: rustify all input

Added by Victor Julien almost 2 years ago. Updated about 1 year 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

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

Updated by Victor Julien almost 2 years ago

Actions #2

Updated by Victor Julien almost 2 years ago

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

Updated by Victor Julien almost 2 years ago

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

Updated by Victor Julien almost 2 years ago

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

Updated by Victor Julien over 1 year ago

  • Priority changed from Normal to High
Actions #6

Updated by Victor Julien over 1 year ago

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

Updated by Philippe Antoine about 1 year ago

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

Actions #8

Updated by Jason Ish about 1 year 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 about 1 year 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 about 1 year ago

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

Updated by Victor Julien about 1 year ago

Actions #12

Updated by Jason Ish 11 months ago

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

Updated by Victor Julien 11 months ago

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

Updated by Philippe Antoine 11 days ago

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

Also available in: Atom PDF