Hoppa yfir í efnið

Næstu skref: tvíundarnýting

Þessi hluti bókarinnar kynnir minnislíkön, yfirflæði, ROP, libc og hrúgu. Framhaldsverkefni eiga alltaf að keyra í sérstöku æfingaumhverfi.

Mælt námsferli

  1. Ljúkum grunninum í C, ELF, minni og GDB.
  2. Byrjum á einföldum ret2win-verkefnum.
  3. Bætum við NX, PIE, canary og ASLR einu í einu.
  4. Færum okkur yfir í ROP, ret2libc, format strings og hrúgu.

Kennsluvettvangar

Efni Hentar fyrir Aðgangur
pwn.college Skipulagt gagnvirkt nám í pwn og lágstigsforritun Ókeypis
ROP Emporium ROP-verkefni í stýrðum skrefum Ókeypis
Exploit Education Phoenix og önnur kennsluumhverfi Ókeypis verkefni
Nightmare Safn verklegra pwn- og rev-lausna Ókeypis lesefni
Modern Binary Exploitation Námskeið með fyrirlestrum, verkefnum og vélum Ókeypis og opið

Gagnleg uppflettirit

  • pwntools documentation — Python-safnið sem við notum í mörgum verkefnum.
  • pwndbg — GDB-viðbót fyrir minnisgreiningu.
  • man-síður Linux og opinber skjöl fyrir glibc og GCC.

Öryggisreglur

  • Keyrum aðeins æfingaforrit sem við eigum eða höfum leyfi til að prófa.
  • Notum ekki raunveruleg lykilorð, lykla eða persónuleg gögn í payload.
  • Einangrum gamla eða ótrausta tvíundarkóða.
  • Prófum ekki payload á netþjóni nema verkefnið heimili það.

Sjálfsmat

Við erum tilbúin að halda áfram þegar við getum:

  • útskýrt hvar gögn og stakkrammi liggja í minni,
  • fundið offset í einföldu buffer overflow,
  • lesið grunnupplýsingar úr checksec,
  • smíðað og útskýrt einfalt ROP-keðjudæmi.