Defense

「Can We Prevent Use-after-free Attacks?」というタイトルで発表した

ssmjp スペシャル 〜すみだとささみとみちおさん〜のお知らせ – ssmjp Infomation ssmjpスペシャル(2017/06/04) - すみだセキュリティ勉強会 2年前に発表していた勉強会が久しぶりに開催されるということで、Use-after-free攻撃の原理と対策について話した。…

ROP検知手法RAPについてまとめてみる

先日、PaX Teamが公表したROP(Return-oriented Programming)検知手法RAPについてまとめてみる。 RAP: RIP ROP (H2HC 2015) 用語に重複がありまぎらわしいが、論文ではReturn Address ProtectionおよびIndirect Control Transfer Protectionの二つの手法を…

Kprobesで実行可能メモリの読み出しを検知してみる

Dynamic ROP(JIT-ROP)はlibcなどの実行可能メモリを読み出し、その中にあるgadgetを利用することでROPを行う。 これに対し、「x64で実行可能なメモリアドレスに対する入出力システムコールを検知してみる」では、ptraceでreadシステムコールを監視すること…

x64で実行可能なメモリアドレスに対する入出力システムコールを検知してみる

「x64でDynamic ROP + Return-to-vulnによるASLR+DEP+RELRO回避をやってみる」では、leave命令によるstack pivotができない場合でも同一の脆弱性を複数回利用することでシェルを起動した。 また、シェルの起動にはlibcバイナリの中身をwrite(2)で読み出し得…