YÜKLENİYOR...

ROP Chain Geliştirme: Return-Oriented Programming

0 yanıt0 görüntülenme
  • rop-chain
  • jop
  • cop
  • return-oriented
Return-Oriented Programming (ROP), DEP/NX bypass için kullanılan ve mevcut kod parçacıklarını (gadgets) zincirleme tekniğidir. Gadgets, "ret" instruction ile biten kısa kod sekanslarıdır ve binary içinde ROPgadget veya ropper araçları ile bulunur. ROP chain, gadget'ları sıralı şekilde çağırarak desired function calls (mprotect, VirtualProtect, WriteProcessMemory) gerçekleştirir ve DEP korumasını atlatır. Stack pivot, stack pointer'ı attacker-controlled buffer'a yönlendirir ve ROP chain execution başlatır; xchg esp, eax gibi gadgets kullanılır.ROP chain automation,ROPgadget --chain ve angrop araçları ile otomatik zincir oluşturma sağlar ve manual chain construction'a alternatif sunar. SROP (Sigreturn-Oriented Programming), sigreturn syscall frame'ini manipulate ederek arbitrary syscall execution sağlar ve minimal gadget requirement gerektirir. JOP (Jump-Oriented Programming), "jmp" instruction ile biten gadgets kullanır ve ROP'a alternatif tekniktir; indirect branch gadgets gerektirir. COP (Call-Oriented Programming), "call" instruction ile biten gadgets kullanır ve Windows exploit'lerinde yaygındır; virtual table pointer manipulation ile çalışır.