ProHoster > Blog > netfréttir > Snuffleupagus verkefnið er að þróa PHP einingu til að hindra veikleika
Snuffleupagus verkefnið er að þróa PHP einingu til að hindra veikleika
Í mörkum verkefnisins snuffleupaguser að þróast eining til að tengjast PHP7 túlknum, hönnuð til að bæta öryggi umhverfisins og hindra algengar villur sem leiða til veikleika í keyrslu PHP forrita. Einingin gerir þér einnig kleift að búa til sýndarplástra til að laga ákveðin vandamál án þess að breyta frumkóða viðkvæma forritsins, sem er þægilegt til notkunar í fjöldahýsingarkerfum þar sem ómögulegt er að halda öllum notendaforritum uppfærðum. Einingin er skrifuð í C, er tengd í formi sameiginlegs bókasafns ("extension=snuffleupagus.so" í php.ini) og dreift af leyfi samkvæmt LGPL 3.0.
Snuffleupagus býður upp á reglukerfi sem gerir þér kleift að nota staðlað sniðmát til að bæta öryggi, eða búa til þínar eigin reglur til að stjórna inntaksgögnum og virknibreytum. Til dæmis er reglan „sp.disable_function.function(“system“).param(“command“).value_r(“[$|;&`\\n]“).drop();“ gerir þér kleift að takmarka notkun sértákna í system() falla rökum án þess að breyta forritinu. Á sama hátt geturðu búið til sýndarplástrar til að loka fyrir þekkta veikleika.
Miðað við prófanirnar sem framkvæmdaraðilarnir gerðu, dregur Snuffleupagus varla úr afköstum. Til að tryggja eigið öryggi (mögulegir veikleikar í öryggislaginu geta þjónað sem viðbótarvigur fyrir árásir) notar verkefnið ítarlegar prófanir á hverri commit í mismunandi dreifingum, notar kyrrstöðugreiningarkerfi og kóði er sniðinn og skjalfestur til að einfalda endurskoðun.
Innbyggðar aðferðir eru til staðar til að loka á veikleikaflokka eins og vandamál, tengdar með raðgreiningu gagna, óöruggt notkun PHP mail() aðgerðarinnar, leka á vafrakökuinnihaldi við XSS árásir, vandamál vegna hleðslu skráa með keyrslukóða (til dæmis á sniði phar), léleg gæði tilviljunarkennd númeramyndun og skipti röng XML smíði.
Eftirfarandi stillingar eru studdar til að auka PHP öryggi:
Virkja sjálfkrafa „öruggt“ og „samesite“ (CSRF vernd) fána fyrir vafrakökur, dulkóðun Kex;
Innbyggt sett af reglum til að bera kennsl á ummerki um árásir og málamiðlun forrita;
Þvinguð alþjóðleg virkjun „ströng" (t.d. hindrar tilraun til að tilgreina streng þegar búist er við heiltölugildi sem rök) og vörn gegn tegund meðferð;
Sjálfgefin lokun siðareglur umbúðir (til dæmis að banna „phar://“) með skýrum hvítlista;
Bann við að keyra skrár sem eru skrifanlegar;
Svartur og hvítur listi fyrir eval;
Nauðsynlegt til að virkja TLS vottorðathugun við notkun
krulla;
Bætir HMAC við raðgreina hluti til að tryggja að afserialization sæki gögnin sem geymd eru af upprunalegu forritinu;
Biðja um skráningarham;
Lokað á hleðslu á ytri skrám í libxml með tenglum í XML skjölum;
Geta til að tengja utanaðkomandi meðhöndlun (upload_validation) til að athuga og skanna upphlaðnar skrár;
Verkefnið var búið til og notað til að vernda notendur í innviðum eins af stóru frönsku hýsingaraðilunum. Það er tekið framað einfaldlega að tengja Snuffleupagus myndi vernda gegn mörgum hættulegum veikleikum sem greindust á þessu ári í Drupal, WordPress og phpBB. Hægt væri að loka á veikleika í Magento og Horde með því að virkja haminn
"sp.readonly_exec.enable()".