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.