Hack-Zone.clan.su
Четверг, 19.06.2025, 07:03
Меню сайта
Мини-чат
Категории раздела
Мои статьи [6]
Наш опрос
кто вы?
Всего ответов: 29
Block title
Graffiti Decorations(R) Studio (TM) Site Promoter
Статистика
Статистика сайта
Онлайн всего: 1
Гостей: 1
Пользователей: 0
Нас сегодня посетили
Сейчас Онлайн
Счетчики
Поиск
Главная » Статьи » Мои статьи

Взлом сайта
Многие новички часто задаются вопросом – а с чего же мне начать взлом сайта? Сейчас я попытаюсь об этом рассказать.

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

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

Сейчас я расскажу как собрать как можно больше информации об атакуемом сервере. Дополнительная информация может очень даже помочь при проведении атаки или при поиске эксплойта.

Robots.txt

Файл robots.txt используется на сайтах для того, чтобы предотвратить сканирование поисковыми пауками директорий указанных в этом файле. Файл robots.txt лежит в корневом каталоге сайта (http://www.[site].ru/robots.txt). Но хочу обратить Ваше внимание на то что не на каждом сайте можно встретить данный файл.

Robots.txt имеет примерно следующее строение:

User-agent:*
Disallow: /Dir1
Disallow: /Admin
Disallow: /Users
Disallow: /Test
Disallow: /Unit

Здесь Dir1, Admin, Users, Test и Unit – это каталоги, доступ к которым запрещен поисковым паукам (каталоги могут быть совершенно другими, это зависит от администратора). К определённым директориям запрещается доступ паукам из-за того, что в них может храниться конфиденциальная информация. В таких каталогах чаще всего хранятся странички администрирования и какая-либо важная информация. Каталоги в robots.txt указываются из корневого каталога сайта. Не смотря на то, что поисковым паукам доступ туда закрыт, Вы, если повезёт, сможете в эти каталоги без проблем обратится.

/CGI-BIN/

Данный каталог используется для хранения и выполнения различных скриптов. Каталог /CGI-BIN находится в корне сайта (http://www.[site].com/cgi-bin/). Так же, в этой директории, могут присутствовать log-файлы содержащие в себе действия скрипта и записи об ошибках (частенько попадается). В /CGI-BIN, после установки сервера, хранится файл test.cgi (или test.pl). Большинство администраторов его удаляют, но некоторые забывают (или просто не знают) о важности удалении этого скрипта. Чем же этот скрипт может помочь взломщику? Данный скрипт может предоставить важную информацию о сервере. Например, администраторы, которые пользуются пакетом denever, часто забывают удалять из папки /cgi/ скрипт test.php который выводит информацию об установленной версии php и об его конфигурации. Вот пример результата запроса /cgi-bin/test.pl того же denever’а:
Этот текст сгенерирован файлом /home/[имя сайта]/cgi-bin/test.pl, расположенным в CGI-директории виртуального хоста localhost.


Увидев эту надпись, взломщик уже знает что все файлы сайта лежат в директории /home/[имя сайта]/

Заметьте что не на всех сайтах так. Каталог /CGI-BIN больше распространён на серверах с установленным apache. В IIS за место /CGI-BIN имеется папка /scripts . Идеальным было бы поставить у себя на компьютере точно такой же пакет (который установлен на сервере) и уже у себя на компьютере разбираться в его строении и в файлах дающихся для теста.

Папка может называться и не cgi-bin. Она может иметь названия cgi, cgi-glob и т.д. А вообще, администратор может создать совершенно отдельную папку и разрешить в ней исполнения cgi-скриптов.

Дополнительная информация.

Дополнительная информация никогда не бывает лишней. Дополнительной информацией может быть абсолютно всё, что поможет хоть как-то во взломе. Для начала, можно запросить не существующую страницу, конечно же, вы увидите сообщение об ошибке, но внизу, скорее всего, будет указана версия установленного веб-сервера (зависит от лоховитости администратора, но следует принять во внимание то, что иногда данные могут быть специально изменены). Сейчас имеется множество админов, которые держат сервера под Linux. При установке Linux они не редко указывают, что нужно установить сразу веб-сервер, почтовый сервер и т.д. Чем плоха такая установка? Плоха она тем, что если во время не подправить конфигурационные файлы взломщик вместе с сообщением об ошибке увидит и версию веб-сервера и операционной системы и модов, установленных для веб-сервера (Такую вещь я видел на сайте одного из крупных банков). Хотя если собирать Apache самому, из исходников, то при ошибке он не скажет версию ОС. Так же администратор может установить все под ряд модули для веб-сервера (просто так, чтоб было). Это очень плохо тем, что если в одном из модулей будет найдена уязвимость, то пострадает сервер, даже если данный модуль не используется. Вот пример плохого администрирования, запрашиваем не существующий документ и появляется ошибка:

Not Found



The requested URL /ewfwefw.pl was not found on this server. 



Apache/2.0.52 RedHat 10.0 (modules) 



Как видите мы уже знаем версию веб-сервера, ещё и тип ОС которая стоит на сервере + версия ОС. Дальше (в большинстве случаев) идёт описание модулей которые установлены для Apache+версии этих модулей, я их приводить не стал а просто заменил словом modules (Лень заново всё ставить J). А вот ответ нормально администрируемого сервера
Not Found



The requested URL /wefew was not found on this server.



Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.


Тут ни версии веб-сервера, ни даже названия. Но только по типу ответа можно судить что стоит Apache т.к. IIS выдаёт ответ, который оформлен совершенно по другому.

Так же дополнительной информацией может считаться листинг директорий.

Листинг директории это просмотр её содержимого. Дело в том что в каждой папке должен находится файлик index.html, index.php и т.д., а вот если этого файлика в папке нету то веб-сервер показывает всё содержимое этой папки. Пример: 



В директориях могут находиться файлы, ссылок на которые не существует. Такие файлы могут использоваться для быстрого переконфигурирования сайта, или администрирования определённой его части. Обратите внимание на то, что за просмотр папок отвечает отдельный модуль, если администратор его отключит то Вы увидите пустую страницу.

Версии установленных скриптов.

В данное время очень много как бесплатных так и платных скриптов для сайтов. Если компании жалко денег на заказ сайта у какойн-нибудь веб-студии то администратор просто скачивает готовые скрипты и устанавливает их. Чаще всего получается очень даже приятный сайт, с красивым дизайном и многофункциональностью. Но разработчики таких скриптов обязательно оставляют на своих скриптах запись о том кто автор скрипта и домашнюю страничку. Чаще всего эта надпись находится внизу. Вот пример указания авторских прав в форумах phpBB:

Powered by phpBB 2.0.17 © 2001, 2005 phpBB Group

Как ты видишь тут указано имя форума (phpBB), его версия (2.0.17), имя и годы существования группы(2001,2005 phpBB Group), которая разработала его.

Администраторы чаще всего удаляют версию форума, или подделывают её. Если же всё-таки версия форума настоящая и администратор её не затирает то можно попробовать поискать информацию об уязвимостях данного форума в публичных источниках. Вдруг эта версия дырявая?

Так же дела обстоят и с другими бесплатными скриптами. Но если же нет версии то бывают (редко) какие ни будь признаки по которым можно отличить версию скрипта. В данном случае скрипт скачивается и устанавливается у себя на компьютере, затем исследуется. Но об этом позже.

Ошибки и недоработки в скриптах.

Сейчас очень редко можно встретить сайты, которые не используют скрипты. Скрипты могут быть не достаточно защищены. Это уже не недоработка администратора, а недоработка программиста написавшего этот скрипт. Рассмотрим следующий пример:

На сайте http://www.[site].com имеется скрипт story.php, который отвечает за показ, выбранного пользователем, рассказа. Название рассказа передаётся в параметре story. Скрипт просто берёт из папки файл с именем рассказа и выводит его пользователю. Вот пример ссылки: http://www.[site].com/story.php?story=dead_man.txt

Если программист, который писал этот скрипт, не уделил внимание фильтрации опасных символов то после подставления в ссылку опасного символа (например одинарной ковычки http://www.[site].com/story.php?story=dead_m’an.txt) то покажется ошибка, из которой можно извлечь много интересного. Вот небольшой пример ошибки связанной с работой с файлами: 

Warning: fopen(./data/storys/dead_m'an): failed to open stream: No such file or directory in D:Websiteindex.php on line 54 

Warning: fputs(): supplied argument is not a valid stream resource in D:Websiteindex.php on line 55 

Warning: fclose(): supplied argument is not a valid stream resource in D:Websiteindex.php on line 56 

Warning: file(./data/storys/dead_m'an): failed to open stream: No such file or directory in D:Websiteindex.php on line 60 

Warning: array_reverse(): The argument should be an array in D:Websiteindex.php on line 63 


Из этой ошибки можно понять, что все рассказы расположены в папке /data/storys/ и то что все файлы сайта лежат в папке D:Website. А вот тут уже можно увидеть что веб-сервер стоит на платформе Windows (сайт лежит на диске D ).

Это конечно уже уязвимость, но о них мы поговорим чуть позже.

phpinfo.php

Данный файл (прим. редактора: на самом деле это функция такая) содержит в себе всю информацию об установленной версии php и ещё много интересной информации. phpinfo используется разработчиками для отладки сайта. Когда сайт только поднимают и настраивают, разработчикам часто приходится обращаться к этому файлу, в нём лежит много информации о конфигурации php. Эта же информация может быть полезна взломщику при исследовании защиты сайта. Частенько, после окончания отладок и настроек, разработчики забывают убирать этот файл, что может привести к не очень хорошим последствиям. Также этот файл может быть переименован или в нём может содержаться какая-нибудь шутка администратора. Вообще этот файл может располагаться где угодно, так что если всё-таки он очень нужен то можете проверить на его наличие все директории.

Вот небольшой кусок информации, которую можно найти в этой файле: 



Отсюда видно что версия php – 4.3.11 . ОС, на которой установлен веб-сервер это Windows NT 5.0 (Windows 2000). Далее видно что сам php установлен в D:UtilsPhp . Там же лежит конфигурационный файл php.ini. После этой информации в phpinfo содержится информация о конфигурации php и ещё много всего интересного. Вообще вся информация дающаяся phpinfo занимает несколько листов формата А4.

Заголовок ответа.

Когда вы запрашиваете у сервера какой-либо документ то он, в заголовке ответа, указывает информацию о себе. Данный способ может быть полезен тогда, когда при выводе ошибок или листингов сервер не сообщает о себе ничего. С помощью браузера заголовок ответа не получить, зато большинство программ это умеют. Они будут описаны чуть позже. Вот небольшой пример: запрашиваем на одном веб-сервере несуществующий документ, в ответ получаем следующую ошибку:

Not Found



The requested URL /ewfwe.pl was not found on this server. 



Apache/1.3.33 Server at www.[site].ru Port 80 


Отсюда видим - сервер даёт информацию только о своей версии и всё.

Далее делаем запрос на любой существующий (можно и не существующий) файл и в заголовке находим следующую информацию: 

HTTP/1.1 200 OK



Date: Sat, 19 Aug 2006 15:47:33 GMT



Server: Apache/1.3.33 (Unix) PHP/4.3.10 rus/PL30.20



X-Powered-By: PHP/4.3.10



Connection: close



Content-Type: text/html; charset=koi8-r



Expires: Thu, 01 Jan 1970 00:00:01 GMT



Last-Modified: Sat, 19 Aug 2006 15:47:33 GMT 


Давайте разберём только интересующую нас строчку.

Это строчка с информацией о веб-сервере(3-я сверху). Обратите внимание на то, что при ошибочном запросе документа веб-сервер выдал только информацию о своей версии, а тут сразу видно и дополнительные модули + их версии: PHP/4.3.10 и PL30.20 (это perl). Так же по строчке Apache/1.3.33 (Unix) можем судить о том, что операционная система точно не Windows. Но эта надпись не означает того, что на сервере стоит именно Unix, там может стоять Linux, xBSD и любая другая *nix система. Как же можно получить данный заголовок? Очень просто. Для этого нам понадобится написать скрипт из 5 строчек на перле. Вот код данного скрипта:

#!usr/bin/perl

use LWP::UserAgent;

$client = LWP::UserAgent->new( ) or die;

print "Enter site:";

$url=<STDIN>; #Просим пользователя ввести адрес сайта

$answer = $client->get($url); #Отсылаем запрос на сайт

print "============================n";

print $answer->header('server'); # Выводим поле Server из заголовка

print "============================n"; 


Вот пример работы нашего скрипта: 



Комментарии.

Интересные комментарии в коде веб-страниц попадаются очень редко, практически никогда, но бывают и исключения. Я сам всего 1 раз находил именно нужные комментарии в коде, содержащие важную информацию. Просмотреть код веб-страниц можно в браузере, либо можно сохранить страницу на винчестере и открыть её через блокнот. Кстати в html-коде может попасться тоже немного интересной информации о расположении сайта, однажды я встретил вот такой код картинки:

<img scr=’C:\site\www\images1.gif’>

Как видите тут даже напрягатся не надо – разработчик сам показал мне директорию сайта.

Скрытые тэги.

Как вы знаете – в формах html-страниц имеются различные типы полей данных – text, password и т.д. Сейчас речь пойдёт о полях типа hidden (скрытых). Данный тип полей используется для передачи определённой информации скрипту, только в скрытой форме, если поля типа text и password Вы видите и можете вводить в них данные то hidden-поля вы не видите. Увидеть их можно только в html-коде данных. Вот небольшой пример скрытого поля с именем user:

<form action=”send.php” method=”POST”>

Введите сообщение: <input type=”text” name=”message”>

<input type=”hidden” value=”administrator” name=”user”> <!-- скрытое поле -->

</form>


Допустим что имеется определённый форум или чат, вобщем любое веб-приложение где можно посылать сообщение пользователем от своего имени. Если программисты не образованны в плане безопасности, то они могут передавать скрипту имя отправителя скрытые тэги. В таком случае взломщик может сохранить форму на винчестере и изменить значение скрытого поля на другое имя. Таким образом, станет возможным отправление сообщений от любого имени.
Категория: Мои статьи | Добавил: inv1sible_ (14.03.2012)
Просмотров: 22712 | Комментарии: 149 | Теги: hack | Рейтинг: 5.0/1
Всего комментариев: 331 2 3 4 »
33 ataletiujs  
0
prednisone buy no prescription <a href=https://prednimed.com/>prednisone review</a> can prednisone make you horny

prednisone and kidney https://prednimed.com/ - can u take prednisone with ibuprofen

32 FobertVaw  
0
Good day! Would you mind if I share your blog with my myspace group? There's a lot of people that I think would really enjoy your content. Please let me know. Thanks
купить диплом в серове
https://njt.ru/forum/user/168764/
http://autogroupe.ru/zakazhite-diplom-onlayn-i-otkroyte-dveri-k-novyim-vozmozhnostyam
https://vip.9bb.ru/viewtopic.php?id=5499#p9158
https://kharkov-balka.com/showthread.php?p=152947#post152947
http://moscowurban.getbb.ru/viewtopic.php?f=12&t=994

купить диплом в сарове

31 Timsothyexoto  
0
Hello there! Do you use Twitter? I'd like to follow you if that would be ok. I'm definitely enjoying your blog and look forward to new posts.
купить диплом в феодосии
http://bonus.2bb.ru/viewtopic.php?id=4815#p25760
http://pesnibardov.ru/f/viewtopic.php?f=2&t=156698
https://hikariacademy.edu.vn/49-ban-tham-du-hoc-bong-asahi-deu-do/
http://amtest.mybb.ru/viewtopic.php?id=328#p648
https://www.pitomec.ru/forum/post/12103

купить диплом в череповце

30 FobertVaw  
0
What a data of un-ambiguity and preserveness of precious know-how about unexpected feelings.
купить диплом в кургане
http://sk-sh.ru
http://n-seo.ru
http://vrninfo.ru

купить диплом в ангарске

29 DichaelVom  
0
Aw, this was an incredibly good post. Spending some time and actual effort to make a great article… but what can I say… I put things off a lot and don't seem to get nearly anything done.
куплю диплом цена
http://sutangarsk.ru
http://rdm-mytyshi.ru
http://rfe-revizor.ru

купить диплом журналиста

28 ShaneFauck  
0
Hello to every one, it's genuinely a nice for me to visit this web site, it includes priceless Information.
купить диплом в армавире
http://mir-forum.ru
http://ivavai.ru
http://school-10-lik.ru

купить диплом медицинского училища

27 OLaneFauck  
0
Hello friends, its impressive piece of writing regarding teachingand entirely explained, keep it up all the time.
купить диплом врача
http://milru.ru
http://ot1do8.ru
http://psypokolenie.ru

купить диплом в балашове

26 Timsothyexoto  
0
What a information of un-ambiguity and preserveness of precious know-how on the topic of unexpected feelings.
купить диплом в перми
http://interestbook.ru
http://sosedi2017.ru
http://sadicagency.ru

купить диплом в сургуте

25 GichardBit  
0
http://reklama-sev.com.ua

24 FobertVaw  
0
http://vipkamin.by

1-10 11-20 21-30 31-33
Имя *:
Email *:
Код *:
Форма входа
Гость

Друзья сайта
  • Game Project
  • ...
    Block title
    Linux hack
    Администрация сайта не несёт ответственность за использование материалов