петък, 27 април 2012 г.

Търсене на файлове в линукс.

Днес ми се наложи да отстраня една много противна гадина, която се е залепила за една дузина файлове на служебния уеб сървър. За целта трябва да търся даден стринг, който е направен през base64_encode() – функция на php, която може да ни кодира даден код и при печатането на base64_decode() между php тагове се отпечатва въпросният кодиран изпълним код.
1. find / -name *.php | xargs grep ‘abv’ -l
горната команда ще върне всички файлове, които съдържат стринг abv, до който има достъп потребителя през който сме влезли в системата. Като четенето на файловете започва от / до последното ниво на всяка директория.
Забележки: grep командата приема и стринг във формат „abv“ или abv без кавички, кавичките се слагат в случай когато имаме кавички в самия стринг.

2.
Ако на машината имаме директории като cache, backup или нещо, което се трие и създава ежедневно, за да не изтезавате сървъра премахнете търсенето от тези директории.
find / \( ! -name cache \) -o \( ! -name root -prune \) -name *.php | xargs grep ‘abv’

Автор: Г.Георгиев(Gesh)
Сайт: designart-bg.net

linux, linux find

Няма коментари:

Публикуване на коментар