1. Trečiųjų šalių skriptų naudojimas.
Kartais naudodami populiarius trečiųjų šalių bibliotekas, rizikuojate serverio saugumu: ne visada spėsite atnaujinti šias bibliotekas, o programišių robotai, automatiškai skenuodami svetaines, glai ieškoti, ar egzistuoja tiesiog kokios nors bibiliotekos aplankas Jūsų serveryje, pvz "www.jususaitas.lt/ckeditor". Dėl šios priežasties, geriausia tokių bibliotekų aplankus pervardyti į neatspėjamus, pvz "www.jususaitas.lt/ckeditor
B6Yx". Jeigu tas bibliotekas iškviečiate ne tik iš apsaugotos admin dalies, bet ir viešoje dalyje, tia jų iškvietimo kodus taip pat vertėtų apsaugoti, pvz, naudojant jquery, skriptus glaite iškviesti taip:
$.getScript("/cke"+"ditorB6Yx/ckfi"+"nder/ckf"+"inder.js");
2. Užkrėstų failų paieška
Jeigu jau serveryje buvo įsilaužta, reikėtų praskenuoti visus serverio failus, apieškoti, ar nėra integruoto kenkėjiško kodo. Serveryje galima leisti tokią komanda:
cd /var/www
sploitpattern='r0nin|m0rtix|upl0ad|r57shell|cFaTaLisTiCz_Fx|Tukulesto|99shell|shellbot|phpshell|void\.ru|phpremoteview|directmail|bash_history|\.ru/|brute *force|multiviews|cwings|vandal|bitchx|eggdrop|guardservices|psybnc|dalnet|undernet|vulnscan|spymeta|raslan58|Webshell'
find ./ \( -regex '.*\.php$' -o -regex '.*\.cgi$' -o -regex '.*\.inc$' \) -print0 | xargs -0 egrep -il "$sploitpattern" | sort > potential_exploits.txt
ARBA
Replace the path below (.) with the absolute path of the directory you want to recursively scan. For example, you could recursively scan from the working directory:
grep '((eval.*(base64_decode|gzinflate|\$_))|\$[0O]{4,}|FilesMan|JGF1dGhfc|IIIl|die\(PHP_OS|posix_getpwuid|Array\(base64_decode|document\.write\("\\u00|sh(3(ll|11)))' . -lroE --include=*.php*
Esmė: ieškoti failuose tokių frazių, kaip eval, gzinflate, iframe ir pan. Jei serveris ne su root prieiga, galima failus atsisiųsti į kompiuterį ir ieškoti su programa
http://www.wingrep.com/ (ji ieško failo viduje).
Vertingas išsamus sąrašas:
http://www.exploit-db.com/papers/12871/