Характеристиките на сайта са, че вече няма подозрителни файлове във файловете и сайтът е по същество ASP+SQLSserver архитектура. Отворете базата данни от Enterprise Manager и ще видите, че скриптът Trojan е добавен към скрипта на базата данни и полевите символи. Отворете лога на уебсайта и ще видите, че кодът е добавен чрез SQL инжекция.
Никакъв шанс, първо премахни скрипта през анализатора на заявки, за щастие хакерът е все още сравнително обикновен, можеш да го изчистиш наведнъж, да напишеш скрипта за изчистване за всяка таблица в базата данни в анализатора на заявки и после да го изпълниш веднага, добре, отвори сайта, светът е чист. Скриптът за изчистване е даден по-долу:
UPDATE таблица set field name = REPLACE(field name, hacker url ,)
Ако заразеното поле е текст, това е по-сложно и част от данни може да бъдат загубени по време на процеса на конвертиране, за да се конвертира тип текст във varchar(8000) чрез функцията за конвертиране
След изчистване, скриптът за изчистване SQL ще бъде запазен, всичко наред ли е? След два часа сайтът пак е блокиран!
Трябваше да пусна анализатора на заявки отново, да пусна скрипта и да го изчистя. Много е ясно, но хората винаги трябва да спят, така че не можеш да хванеш тайни там с хакери.
Изведнъж мислейки, че това е библиотеката на sqlserver, Microsoft трябва да има решение, не можем да спрем да гледа базата данни, за да закачи троянски кон, но можем да го направим неуспешно. Това е с тригери!
Всеки, който е запознат с тригерите, знае, че sql2000 първо вмъква и модифицира данни в временната таблица, а след това ги поставя в съответната таблица. Блокирането на стъпките на хакерите е в тази временна маса!
Кодът на хакерския висящ кон съдържа тази дума, защото само по този начин клиентът може да отвори сайта едновременно, за да стигне до големия хакерски сайт, така че нека започнем оттук.
Кодът за задействане е даден по-долу:
CREATE име на тригера
Име на масата За актуализация, вмъкнете като Declare @a Varchar(100) - Поле за магазин 1
Обяви @b Варчар(100) - Поле на магазина 2
Declare @c Varchar(100) -- Поле за магазин 3
изберете @a=Поле 1, @b=Поле 2, @c=Поле 3 от вмъкнатите ако(@a като %script% или @b като %script% или @c като %script%) Начало ROLLBACK транзакция край
Значението на този тригер е първо да се дефинират три променливи и да се съхраняват трите лесно съхранявани в вмъкнатата таблица
Полето за string-type, което хакерът е започнал, и след това използвай лайк, за да прецени неясно дали стойността съдържа word script, и ако да, да върне транзакцията назад без да докладва грешка, така че да парализира хакера и да го накара погрешно да мисли, че е прекратил коня.
Приятели, които са блокирали, могат да вземат този скрипт и да го модифицират съответно, което би трябвало да гарантира, че сайтът няма да бъде блокиран. Освен това има и тип текст за полета, които лесно се окачват, но този тип е по-труден за обработка, и е наблюдавано, че хакерите често окачват няколко полета едновременно, за да закачат маса, така че докато едно поле не е успешно, цялата таблица е неуспешна |