Kurze Einführung in reguläre Ausdrücke, Konzept und Verwendung - bis zum Ausnutzen bestimmter Kombinationen von regulären Ausdrücken und Payload für einen Regular Expression Denial of Service (reDoS)-Angriff
Reguläre Ausdrücke wie /^([a-zA-Z0-9])(([\-.]|[_]+)?([a-zA-Z0-9]+))*(@){1}[a-z0-9]+[.]{1}(([a-z]{2,3})|([a-z]{2,3}[.]{1}[a-z]{2,3}))$/ oder einfacher ([a-zA-Z]+)* verwirren dich? Keine Sorge, je nach zu validierendem Input verwirrt es deinen Computer auch!
Dieser Talk befasst sich mit regulären Ausdrücken: Wir steigen ein mit einem kurzen Ausflug in die theoretische Informatik und endliche Automaten, befassen uns allgemein mit regulären Ausdrücken und warum diese nützlich sind, bis wir herausfinden, was es mit bösen regulären Ausdrücken auf sich hat - und wie diese mit dem entsprechenden Payload für Denial of Service-Angriffe genutzt werden können.
Um von diesem Talk etwas mitnehmen zu können, reicht es, schon mal was von regulären Ausdrücken gehört und ggf. sehr einfache Versionen selbst schon einmal angewandt zu haben. Du musst kein Regular Expression Pub Quiz gewonnen haben, um etwas zu verstehen, ganz im Gegenteil. Wahrscheinlich ist es für dich sogar etwas langweilig, wenn du RegEx-Pro bist.
about this event: https://events.ccc.de/congress/2023/hub/event/aaaaaaaaaaa-mein-regulrer-ausdruck-ist-bse/
view more