Program som scanner php filer for mistenkelig kode?

clinton4

Medlem
Hei,

Finnes det et program som scanner php filer for mistenkelig kode? Ser for meg et windows basert program som jeg kan kjøre lokalt på pcn.
 

clinton4

Medlem
Dette bør jo være en enkel sak. Jeg ser for meg at programmet søker linje for linje etter PHP funksjoner som normalt brukes i forbindelse med "slemme" hensikter, f.eks file_get_contents osv.. Når programmet finner slike funksjoner, så gir den beskjed om hvor og i hvilken fil koden befinner seg.
 
Sist redigert:
Dette bør jo være en enkel sak. Jeg ser for meg at programmet søker linje for linje etter PHP funksjoner som normalt brukes i forbindelse med "slemme" hensikter, f.eks file_get_contents osv.. Når programmet finner slike funksjoner, så gir den beskjed om hvor og i hvilken fil koden befinner seg.
Dertsom det er så enkelt så er det mulig du kan bruke denne: Windows Grep Download
 

Nutz

Med lem
Kommer nok endel falske positive opp med en tekstsøk som du forespeiler Clinton. :)
Husk på at alle kommandoer og funksjoner i PHP faktisk er der for å brukes.

Kom over et program som testet sårbarheter på websiden og analyserte kildefiler for kjente signaturer. -Husker den var "svin-dyr". Hadde støtte for de store kjente CMS

Ble positivt overrasket i går, Avast advarte meg når jeg lastet ned et arkiv med en PHP-fil som inneholdt "skummel kode". -Trodde den ikke reagerte på PHP-filer, men garantert ikke noe å stole på.
 

clinton4

Medlem
Kommer nok endel falske positive opp med en tekstsøk som du forespeiler Clinton. :)
Husk på at alle kommandoer og funksjoner i PHP faktisk er der for å brukes...

Joda, men et slikt program vil gjøre jobben med å finne tvilsomme snutter raskere.
 

Nutz

Med lem
Det verktøyet Gisle Hannemyr anbefaler er faktisk ikke "bløff eller tull", men det krever at du selv vet hva av "snutter" som er skadelig. :)

Det programmet jeg så på hadde et par tusen signaturer på hacker-snutter, med er dessverre ikke kar om å finne det igjen. :(
 
Googler du får du noen treff, jf: scan php for malicious code.

Det var også et blogginnlegg som dette: “Scanning” for Malicious Code is Pointless.

Jeg er ikke helt enig med ham. Han har selvsagt rett i at å finne ut hva en slik kodesnutt gjør er NP komplett. Men jeg tror man kan være 90 % sikker på at en som obfuskerer kildekoden sin med Base64 ikke har noe godt i sinne. (De siste 10 % er kode fra folk som tror at "security by obsurity" er en god idé. Slikt er ikke ondsinnet, men fordi dette er en dårlig idé bør man ikke likevel ikke bruke slik kode.) Dermed kan det være nyttig å få vite at kildekoden inneholder strenger kodet som Base64 - selv om man ikke vet noe om hva slike strenger "gjør". Det er ikke vanskelig å lage en regexp som f.eks. finner Base64-enkodede strenger i php kildekode vha. grep (opprinnelig en del av Unix-verktøykassen).

Jeg kikket kjapt på noen av de løsningene som Google fant, og likte ingen av dem. De fleste scanner for signaturer fra spesifikke exploits, men må man må bruke en hel drøss for å få særlig bred dekning. Men dersom du ikke kjenner til ulike exploits kan de være verdt et studium for å se hvordan signaturene til slike ser ut.

Hadde jeg skulle gjort dette, hadde jeg gjort det på en plattform med et ordentlig shell (dvs. Gnu Linux eller Unix - ikke Windows), og laget et shell script der jeg burde gjentatte kall på grep til å se etter regexp-sitgnaturer for et stort antall mulige exploits. Og så måtte selvsagt hver kandidat sjekkes manuellt etterpå fordi det garantert vil være mange falske positive i en slik automatisk scan.

Et analyseverktøy for skadlig kildekode der man ikke selv har mulighet til å vedlikeholde lista over signaturer tror jeg vil være bortkastet tid.
 

Pong

Jeg selger sʇɥƃıluʍop :)
Kjør grep og finn base64 og varianter samt exec, shell_exec etc - og så må du gå gjennom koden - det er nok en hel liste og mange flere, som sikkert også avast bruker.

En (mulig) fordel ved å inngå avtale / kjøpe kode er altså at du da har en motpart som kan ansvarligholdes.
 
Topp