ProPolice/SSP integrálása FreeBSD-be

Címkék

Jeremie Le Hen azon dolgozik, hogy ProPolice stack-smashing protector támogatást ad a FreeBSD-hez. A ProPolice egy az IBM (Hiroaki Etoh) által kifejlesztett gcc (GNU Compiler Collection) kiterjesztés, amely védelmet ígér a stack manipulációs támadások ellen.
A C-ben írt programok az elégtelen programozói ismeretek vagy hanyagság miatt gyakran szenvednek olyan hibákban, amelyek puffer túlcsordulásos (buffer overflow) támadásokhoz nyújtanak támadási felületet. A ProPolice az ilyen támadásokat próbálja meg detektálni és a változók újrarendezésével védelmet próbál nyújtani a mutatók (pointers) manipulálása ellen. A ProPolice védelem a fordításkor kerül az alkalmazásokba, ezért a használatához az összes védendő alkalmazást újra kell fordítani.

Természetesen a ProPolice-nak - mint az ilyen védelmi mechnaizmusoknak általában - van némi overhead-je. Erre nézve a fejlesztő méréseket is végzett. Újrafordította a FreeBSD alaprendszert (make buildworld) és azt vizsgálta, hogy a ProPolice használata mekkora "lassulást" okoz a rendszeren. A mérések szerint ez majdnem elhanyagolható, tekintve, hogy 1-3% körüli értékeket mért.

A patchset-ek elérhetők a RELENG_6-hoz és a CURRENT-hez is.

Más operációs rendszerek már régóta használják a ProPolice-t. Az OpenBSD 2002. decemberében integrálta ezt a védelmet a forrásfájába, és azóta ezzel fordítja a teljes rendszert alapértelmezetten. A DragonFly BSD szintén importálta a rendszerébe a ProPolice-t 2003. decemberében. Emellett korábban készült patch a Linux kernelhez is, de a Linux kernel nem használja a mainline kernelben ezt a védelmi mechhanizmust.

Bővebben a projekt honlapján.

Hozzászólások

A hódnak is propolice kell, nem? :-D