SavePearlHarbor

Още едно копие на хабора

Главно меню

След навигация

И така, от много години работя върху популярния CMS DataLife Engine и помагам на собствениците на сайтове да се справят с него. Днес реших да споделя с вас знанията за една от функциите на DLE - антивирусната.

Вероятно повечето от вас, които вече са инсталирали DLE, са видели бутона Антивирус в административния панел, но малцина са го използвали. Но напразно.
Така че днес един човек се обърна към мен с молба да му помогна да премахне поредния бяка от DLE. Затова ще напиша как да използвам правилно DLE антивируса.

Първото нещо, което трябва да знаете е, че антивирусната програма не осигурява 100% защита. В работата му също може да се попречи. Ето защо, ако не сте сигурни в автентичността му, качете отново файла с антивируса. Той се намира във файла /engine/classes/antivirus.class.php.

Второ, антивирусът не е панацея. Не проверява кеш файлове, js, tpl и т.н.

Трето - антивирусът не казва какво точно с файла, а само посочва, че е променен.

И така, как можете да използвате това чудо? Всъщност е много лесно. В администраторския панел на главната страница щракнете върху бутона "антивирус" и това е всичко. Но какво да направя след това? Ще отговоря на най-популярните въпроси.

Какво означават цветовете на файловете?
Само размер на файла.
Зелено - файловете са по-малки от 50 000 байта
Синьо - по-малко от 100 000 байта
Червеното е повече.
Ето цветовата част:

Какво е "Направете снимка"?
Използването на DLE извън кутията не е добра идея. Функционалността не е достатъчна - трябва да редактирате файловете. Една моментна снимка е възможност за запазване на промените във файловете в специален файл - /engine/data/snap.db. В него се записват всички PHP файлове и техните хешове. При следващата проверка той ще бъде използван за сравнение. Освен това snap.db съдържа информация за вашите шаблони, JS файлове и т.н.

Какво е Провеждане на задълбочено сканиране?
DLE има списък с PHP файлове, които са в полето. Той е регистриран в самия антивирус.class.php. Ако щракнете върху този бутон, проверката ще се извърши не от snap.db, а от този списък.

И ако не снимах - както проверява?
Същото като при „близко сканиране“ ...

Ако няма моментна снимка, те ще проверят размера на файла?
Не, ако няма моментна снимка, DLE не проверява нито размер, нито хеш ... Само списък с файлове.

Добре, намерих променени/нови файлове - какво следва?

Проверете с ръцете си! Само с ръце!
1) Отворете файла и вижте какво има в него.
2) Помним дали принадлежи към някакви модули.
3) Сравнете файла с файла от дистрибуторския комплект или модул DLE.
4) Ако файлът не съвпада или липсва в дистрибуциите - изтрийте или заменете.

Може ли антивирусът да намери вирус в JS или файлове с шаблони?
Не той не може. Вече писах, че антивирусът проверява само PHP файлове. Ако обаче сте направили файл за моментна снимка, тогава да, той ще провери както JS файловете, така и дори шаблоните.

Или може би нападателят може да заобиколи този антивирус?
Естествено. И има много начини да го направите. Първо, антивирусът няма да намери злонамерен код в JS файлове, нито ще го намери в шаблони. Но това не е най-лошото нещо, защото коригирано чрез създаване на моментна снимка. Никой не пречи на нападателя да прави промени във файловете antivirus.class.php или snap.db - и това е, антивирусът е неутрализиран.
От личен опит обаче много малко киберпрестъпници си бъркат с антивирусната програма, защото много малко уебмастъри я използват.

Но все пак как да се предпазите на 100%?
Ще се защитите на 100%, като издърпате кабела от контакта или захранващия блок на системния блок. Но можете да увеличите шансовете.
1) Настройте корони. Ако не знаете как, изчакайте следващата статия.
2) Проверете с ръцете си.
3) Преди да проверите, ако не сте сигурни, качете отново файла antivirus.class.php
4) Винаги правете и съхранявайте файла snap.db на флаш устройството си или някъде другаде - това е вашата безопасност
5) Преди да проверите, качете файла snap.db от вашето копие на сървъра

Ако не осигурява 100% защита, защо е необходима?
Антивирусът е необходим, за да затрудни живота на крекера. Да, няма да предпази от 100% хакове, но може да помогне за минимизиране на последствията и ускоряване на възстановяването на заразен сайт.

Казват също, че има крона, която го прави автоматично.
Да, но това е темата на следващата статия ... Тя вече се подготвя.

Какво друго можете да посъветвате по отношение на защитата на DLE?
Вграденият антивирус, както вече казах, не осигурява 100% защита, тъй като местоположението му е известно и добавянето на хеш на вируса в списъка не е толкова трудно. Но има и други възможности.

Преди няколко години т.нар. Zeos Antivirus. За съжаление този проект е изоставен. Значението му беше следното: антивирусният PHP файл се качва на произволно място. Само администраторът ще знае къде точно ще бъде. Той съхранява файла с моментна снимка в картината, която е в папката за качване, така че е почти невъзможно да го намерите. Уви, не успях да намеря разпределителния комплект, може би описанието ще ви помогне да намерите подобен скрипт.

Има и ново решение за сигурност. Системата се нарича SANTI и може да бъде намерена на santivi.com. Системата е напълно безплатна и ви позволява да внедрите защита на сайта чрез отдалечен метод. Отново, тази система е трудно да се намери на сайта, което ще усложни хакерството.

Е, малко за това как можете да проверите модифицираните файлове с дистрибуцията. Има страхотни програми като WinMarge, Beyond Compare 3 и др., Които ви позволяват да внедрите нещо като SVN. Те създават отчети за променени файлове, показващи променените редове и какво точно е променено. Много удобно.