Взлом сайта за "спс"

onero

Green Team
07.12.2018
17
51
BIT
40
Этот пост будет из серии "история одного взлома". Моя первая проба себя, как писателя. Решил я месяца 4 назад стать хацкером и научиться взламывать сайты. Эта история будет про мой первый взлом, который можно назвать успешным.

Произошло это спустя пару недель после начала моих "занятий". Тестировал я в те дни по порядку сайты, которые мне выдал гугл по запросу "купить суши воронеж". И с одним из них мне таки повезло. По домену можно было подумать, что на нем будут агитировать против суши и рассказывать о прелестях нашей национальной кухни, но нет, так оказались все теже суши, роллы, пиццы и подобные вещи.
После прохождения регистрации, с использование временного email'а, я стал тестировать пользовательские данные на наличие xxs. И xss тут нашлась, уязвимыми оказались поля логина, адреса доставки заказа и телефона (что встречается довольно редко, ибо это поле обычно отдельно проверяется по регулярному выражению. Оно надо сказать и тут проверялось, но только на frontend'е с помощью js, что легко обходится с использование BurpSuit). Но на сайте не было ни комментариев, ни чего либо подобного, поэтому хоть я и нашел stored xss - это почти ничего не давало.
Ищем дальше. Поиски на долго не затянулись и в скором времени, с использованием того же BurpSuit'а, была найдена уязвимость IDOR в редактировании личных данных. При подмене id пользователи в запросе, мы получаем возможность редактировать чужие данные. Но это опять же почти не приносит пользы, т.к. авторизация на сайте происходит по email, а его можно изменить только звонком в тех. поддержку. Остается возможность только нагадить, поменяв всем пароли )
Тогда я был только в начале своего пути пентестера и не заметил очевидного. И когда писал отчет о найденных уязвимостях сообщил просто, что есть xss там-то там-то и idor там-то там-то. Проверяющие это не оценили, видимо думали, что невозможность менять email их спасает и проигнорировали сообщение. Исправлений не выпустили.

Вектор атаки, который я не заметил был такой: у нас есть xss, у нас есть idor, это отличная связка. С помощью idor встраиваем скрипты в личные кабинеты пользователей, js исполняется и отправляет мне email и id пользователя, после чего можно смело менять ему пароль и удалять наш скрипт. Таким образом собираются все необходимые данные для входа в учетную запись.

Продолжаем поиски. Если в личном кабинете нет валидации пользовательских данных, вряд ли она будет где-то еще на сайте. Обращаю внимание на форму для оформления заказа. Если она уязвима, то это будет слепая xss. Вот тут мне пришлось на денек притормозить. У меня не было ни подходящего js, который отправлял бы мне данные, ни снифера на php для их приема. Более того, я не знал ни один из этих языков, в мой арсенал на тот момент входил только python. После пары дней базового изучения языков и выяснения, что я в общем то должен написать, я таки сделал два скриптика. Впоследствии они много раз мне пригоились, незаменимые вещи. Js присылал мне куки, html код страницы, url страницы и user-agent браузера.
Итак, все готово, добавляем скрипт в одно из полей оформления заказа, отправляем и ждем. А ждать предстояло долго, время больше 2-х ночи и наша суши-лавочка уже закрылась. На утро проверив сниффер я с удовлетворением увидел, что файл логов имеет размер не 0 байт, как ночью. Смотрю содержимое. На авторизационных куках у них стоял флаг http-only, их я к сожалению не получил. Из user-agenta видно, что работают у них в chrome на устройствах производства apple... Из url узнал путь к crm системе их сайта. При изучении html кода были найдены логины двух сотрудников. Руками немного поперебирал простые пароли, конечно безуспешно. Брутить не хотелось, не люблю такие методы. При рассмотрении html было видно, что crm у них одностраничная, видимо самописная. В коде была найдена только одна ссылка, для печати заказа, вида domane.com/crm/print.php?id=xxxx. Перехожу по ней... и меня пускают! Нет проверки прав доступа! Уязвимость broken authentication - когда я читал о ней, думал, что таких уже нет природе. И вот она. На странице можно найти ФИО, номер телефона и домашний адрес, если заказывали на дом.

Пишу мини-скрипт на python-e, чтобы все это скачать и приложить к отчету. Заказов у них было почти 20000. Запускаю, ухожу. После окончания проверяю полученные данные, вместо многих заказов - сообщение об ошибке. Упссс, кажется я им сервер положил, хотя скрипт был однопоточным, вот к чему приводит экономия ) Хорошо, что это опять была ночь, и никто наверное даже не заметил.

Обычно уязвимости типа broken autentification находят посредством дирбастинга, мне повезло найти её более легким путем.
Итог: xss + broken_autentification = disclose_information.

Пишу отчет, тут они уже зашевилились, уязвимости исправили, и по первому сообщению, и по второму. Только исправления им видимо делал низкокваливицированный фрилансер - если раньше у них страница входа в crm была весьма красиво оформлена, то после исправлений она стала иметь более чем унылый вид - фон изменили на стандартный, как на всем сайте, но главное, фома логина сдвинута по левому краю экрана, неужели трудно было по центру разместить, одна строка в css...
И мне они даже написали. Открываю довольный сообщение, а там - "спс". Нда, лучше бы вообще не отвечали.

Как говорится: "Нужно не зависеть от результатов своего труда и не ждать вознаграждения". И поиск уязвимостей на сайтах отличная тренировка. Спустя пару месяцев, после деятков репортов без ответов, тебе уже все-равно ответят тебе или нет, заплатят за находки или нет. И обыкновенным "спасибо" более чем доволен. Главное, что ты получил удовольствие занимаясь этим.
А если хочешь вознаграждение, надо участвовать в bug bounty, но там конкуренция, я пока еще не готов.

Спасибо дочитавшим до конца!
 

Вложения

  • maxresdefault.jpg
    maxresdefault.jpg
    96,1 КБ · Просмотры: 1 368

Calibre

Green Team
22.04.2018
39
28
BIT
0
Годно-годно.
Наверно попробую тоже хакать какой-нить сайт. Только не понимаю я вас беляшей-спасителей. Лучше уж для опыта ломать, чем быть суперменом нищебродом.
 

onero

Green Team
07.12.2018
17
51
BIT
40
Годно-годно.
Наверно попробую тоже хакать какой-нить сайт. Только не понимаю я вас беляшей-спасителей. Лучше уж для опыта ломать, чем быть суперменом нищебродом.
От того, что я сообщаю о найденных уязвимостях я не получаю опыт? Я ломаю для удовольствия, но мне не трудно написать пару строк владельцам сайта, к тому-же если есть вероятность, что тебя за это отблагодарят не только словами.
 

Calibre

Green Team
22.04.2018
39
28
BIT
0
старик, я не об этом. я ведь уточнил, что лучше уж для опыта ломать, чем с мыслью передать поломку владельцам, тем более, что овер 80% не благодарные свиньи.
когда я тоже пытался ломать за вознаграждение сидя на винде посредством xspider, писал напрямую админам "так и так нашел страшную дыру и готов передать информацию о ней вам. но надеюсь, что вы отблагодарите белого хакера в ином случае я не могу гарантировать, что этой уязвимостью не воспользуются плохие люди". данный посыл резко увеличивал количество нахождений с админами общего языка.
 
  • Нравится
Реакции: Kken и Tihon49

pr0phet

Platinum
02.04.2018
358
496
BIT
13
старик, я не об этом. я ведь уточнил, что лучше уж для опыта ломать, чем с мыслью передать поломку владельцам, тем более, что овер 80% не благодарные свиньи.
когда я тоже пытался ломать за вознаграждение сидя на винде посредством xspider, писал напрямую админам "так и так нашел страшную дыру и готов передать информацию о ней вам. но надеюсь, что вы отблагодарите белого хакера в ином случае я не могу гарантировать, что этой уязвимостью не воспользуются плохие люди". данный посыл резко увеличивал количество нахождений с админами общего языка.
Много поломали посредством XSpider?
 

onero

Green Team
07.12.2018
17
51
BIT
40
старик, я не об этом. я ведь уточнил, что лучше уж для опыта ломать, чем с мыслью передать поломку владельцам, тем более, что овер 80% не благодарные свиньи.
когда я тоже пытался ломать за вознаграждение сидя на винде посредством xspider, писал напрямую админам "так и так нашел страшную дыру и готов передать информацию о ней вам. но надеюсь, что вы отблагодарите белого хакера в ином случае я не могу гарантировать, что этой уязвимостью не воспользуются плохие люди". данный посыл резко увеличивал количество нахождений с админами общего языка.
Нет, полувымогательские методы меня не устраивают. Не хотят платить - не надо, пусть на пенсию откладывают.
 

Calibre

Green Team
22.04.2018
39
28
BIT
0
ну 2г назад были сайтики, которые этому поддавались
 

SearcherSlava

Red Team
10.06.2017
943
1 262
BIT
223
@onero, здрав будь! "Дайте денег, я хороший!" - таков твой посыл обществу в лице админов и служб СБ, Иногда это может сработать, а иногда может обернуться выездом опергруппы с последующей сенсорной депривацией объекта, я к тому, что обеляйся и пробуй применять свои навыки и умения внеучетного доступа на светлой стороне, чтобы не было поздно пить боржоми...

Как говорится: "Нужно не зависеть от результатов своего труда и не ждать вознаграждения", оно же "делай добро и бросай его в воду", а если копнуть глубоко и еще глубже, психология админов устроена таким образом, что для них твои находки неприемлимы ни под каким соусом, просто разрыв шаблона, чтобы они вот так просто взяли и заплатили совершенно незнакомому доброму самаритянину, который очень тонко разводит их пожиже на предмет СИ, поэтому....

Почитай, пофилософствуй...
 
Последнее редактирование:
  • Нравится
Реакции: barrier, g00db0y и Vertigo

ActionNum

Well-known member
27.11.2016
80
93
BIT
0
Поддержу предыдущего оратора. Тут нужно быть очень аккуратным, ты думаешь, что делаешь добро и даже денег за это не просишь! Но другая сторона, может подумать иначе) По статистике, чаще всего как раз и преследуют по закону не аккуратных белых и серых шляп. А все от того, что они думаю их не накажут за благие намерения.
 

SearcherSlava

Red Team
10.06.2017
943
1 262
BIT
223
Поддержу предыдущего оратора. Тут нужно быть очень аккуратным, ты думаешь, что делаешь добро и даже денег за это не просишь! Но другая сторона, может подумать иначе) По статистике, чаще всего как раз и преследуют по закону не аккуратных белых и серых шляп. А все от того, что они думаю их не накажут за благие намерения.

@ActionNum, здрав будь! Благодарю за поддержку! Твори добро на всей земле, твори добро другим на радость. Другая сторона в большинстве своем как раз так и думает, а дальше, как карта ляжет, и таких случаев предостаточно, а все почему, а потому, что деньги стоят на первом, или перед первым, местом, люди совершенно не задумываются об элементарной личной безопасности, поглощенные погоней за фантиками, если сделан хороший гешефт, начинают вести очень заметный образ жизни независимо от местонахождения, приобретают дорогое/очень дорогое барахло, и тд. и т.п, забывая, точнее, совершенно не задумываясь о том, что как минимум есть люди, у которых они это приобрели, и они также пользуются "сарафанным радио", и как максимум, есть люди, которые могут спросить у них, используя свое служебное положение, откуда дровишки и что-по чем, хоккей с мячем.

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

Есть еще одна хохмочка, сугубо психологическая, она помогает определить ведущую систему и при определенных обстоятельствах трудоустроить человека в ту или иную область деятельности, хотя для самого человека это может явиться сверхоткрытием для самого себя, все очень просто, берутся кубики или монетки и располагаются в прямую линию и хаотично, одна из двух геометрических структур будет подсознательно более интересна другой, узнав это, можно сделать определенные выводы и во многом облегчить жизнь в будущем.

Всем бобра, добра, и хорошего предновогоднего настроения!
 

killerguy

Green Team
10.08.2018
21
14
BIT
0
Привет onero,хорошая статья,про IDOR все круто,я тоже начинающий пентестер,языки не знаю,буду знать,можете подкинуть скрипты для парсинга?
 

onero

Green Team
07.12.2018
17
51
BIT
40
Подкинуть? Скрипт пишется под конкретный сайт. Формат url всегда разный, формат идентификатора может варьироваться, универсального варианта нет. Также можно парсить через BurpSuit, но в бесплатной версии режется скорость, поэтому предпочитаю писать свои скрипты.
 
S

System32

На счет белого или черного отттенка. На счет боржоми и опер групп.
Каждый делает то что хочет. Делай больше делай молча.
Или не делай не чего зато рассказывай всем как ты много делаешь.

Кто не рискует тот не пьет Боржоми)))
А кто рискует тот пьет Шампусик.
 

killerguy

Green Team
10.08.2018
21
14
BIT
0
Подкинуть? Скрипт пишется под конкретный сайт. Формат url всегда разный, формат идентификатора может варьироваться, универсального варианта нет. Также можно парсить через BurpSuit, но в бесплатной версии режется скорость, поэтому предпочитаю писать свои скрипты.
):
 

SearcherSlava

Red Team
10.06.2017
943
1 262
BIT
223
На счет белого или черного отттенка. На счет боржоми и опер групп.
Каждый делает то что хочет. Делай больше делай молча.
Или не делай не чего зато рассказывай всем как ты много делаешь.

Кто не рискует тот не пьет Боржоми)))
А кто рискует тот пьет Шампусик.

Твоя позиция понятна. Почитай на досуге и от Боржоми с Шампусиком постарайся не перейти на чифир.
22.jpg
 
Последнее редактирование:
  • Нравится
Реакции: Сергей Попов

SearcherSlava

Red Team
10.06.2017
943
1 262
BIT
223

@websoft, здрав будь! Утопия - классика жанра политическая философия. Очень близко к литературе по экономической психологии, экономическому поведению, типах и структурах системы экономических отношений.
 
  • Нравится
Реакции: barrier
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!