Лесно хак хакерски тайни на прости неща

Събиране на информация за заглавията на имейл

Можете да направите себе си може да изпрати съобщение, използвайки NCAT или Telnet. Всичко, което е необходимо - това е четири отбора: HELO, поща до, RCPT до данни (макар че има някои ограничения в зависимост от настройките на сървъра). Също така да се отбележи, е, че всяка буква има заглавен и съобщение тяло. Заглавията са само частично показани на крайния потребител (например, «Тема:») и се използват, например, когато пишете за връщане поради проблеми в крайното МТА.

Най-долу ред. Изпратете един писмо до секретаря на някоя компания, тя ни отговори. И ние вече знаем къде идвате там :).

Лесно хак хакерски тайни на прости неща
Нека да видим какво можем да научим от VTB24 спам

Получаване на списък с домейни

Ние ще продължим да събираме информация. Да си представим една компания, която ние искаме да се измъкнат. Една от първите задачи, за pentest чрез интернет - за да получите списък на имена на домейни / виртуални хостове. Методи за мнозина, и те са толкова стари, колкото света: връщането Resolv ПР, имена изброяване guglohaking. И никой от тях не дава пълни резултати, така че се опитват да ги използват заедно, едновременно добавяне на нещо ново :).

"Нова" - колекция от информация за имена, SSL. Така че, нека основа. Когато се свържете през този протокол и да е сървър, то ни връща сертификата си. Сертификат - набор от полета (включително публичен ключ на сървъра), подписани от власт на главния сертификат. Той също така е поле КН (Общо име), който съдържа името на сървъра, който е издал сертификата. Това вече е нещо.

Но това не е всичко. Има и друг малко известен поле на един и същи сертификат - SubjectAltName. Тя ви позволява да определите алтернативни имена. Това всъщност е един ключ може да се използва за много различни имена. Вижте risunochki и всичко става ясно.

Лесно хак хакерски тайни на прости неща
Поставянето на името на хоста на SSL

Оказва се, че изглежда да е на "сигурност" -fishki добиваме Нъгетс информация от интерес за нас. Бих искала да отбележа също така и от личен опит, че понякога получава в сертификатите и информация за вътрешните имена на хостове.

Атака с помощта на сесията озадачаващо изкуство

Logic уязвимост - то винаги е забавно. Те могат да бъдат прости или сложни, но те са обединени от едно нещо - необходимостта да се мисли правилно. Има само тях и един малък проблем: те са по някакъв начин наистина не означавам (вероятно по същия начин, защото всички те са толкова различни :)). Е, добре. Искам да ви разкажа за една интересна техника (или уязвимост, това е как изглеждаш), който представя съвсем наскоро, преди няколко години. Името на това - сесия озадачаващо или сесия променлива претоварване (при OWASP версия).

  1. Потребителят въвежда сайта.
  2. Потребителят въвежда потребителско име и парола и я изпраща към сървъра.
  3. Сървърът проверява данните и ако всичко е наред, то нека във вътрешната си част, по време на изпращането на потребителското бисквитката в HTTP-отговор.
  4. Когато потребителят превключва на някаква друга страница, браузърът добавя да поиска бисквитки. Сървърът за тази бисквитка разбира, че потребителят вече е идентифициран, и работи в съответствие с тази идея.

Всичко изглежда доста добре, но липсва един важен момент. Тя се състои в това, че магазините за сървъра на информация за даден потребител сесия. Това означава, че от потребителя бисквитката идва, той го и външен вид отнема (в паметта в базата данни - в зависимост от софтуера), и това, че е "вързан". Най-простият пример: тя може да се съхранява името на потребителя в сесията. И получите бисквитка от името на сесия и да знаят точно кой се приближи към него в момента.

Като цяло, в сесията на магазина като цяло "временна" информация, като нещо повече или по-малко постоянен - ​​вече в базата данни. Например, логично е да се запази името на потребителя в сесията, но неговата "роля" може да се съхранява в базата данни и заявката, само когато е необходимо. Тук, в действителност, много зависи от конкретното приложение и разработчик на софтуер.

Така например, за съхранение на големи обеми от данни в една сесия може да доведе до изчерпване на паметта или на уеб сървър (Tomcat), или свободно пространство на твърдия диск (PHP). От друга страна, в базата данни е необходимо повече време на лечението. Той определя избора обикновено производителност и сигурност са рядко мисля (разбира се, защото, както можете да се отрази това, което се съхранява на сървъра страна?).

И тук стигаме до самата същност на тази атака: в определени ситуации може да се повлияе върху това, което се съхранява на сървъра. Какво по-точно - това също зависи от ситуацията. Най-често се нуждаем от няколко различни гледни точки за влизане в приложението, данните от които попадат в една и съща променлива сесия.

Аз ще ви дам един класически пример, и всичко ще бъде ясно. В същото положение, както това е описано по-горе. Клиентът, който може да влезе в отделно помещение на уебсайта чрез страницата за вход. Сайтът, който съхранява името на клиента в сесията, както и достъп до частни страници на проверки от името на сесията на потребителя.

Но добавя към тази страница, за да паролата за възстановяване, който трябва да въведете вашето име (1), както и в отговор, системата ще поиска въпрос за сигурност (2), на който ще трябва да въведете правилния отговор, за да възстановите паролата си (3). И тъй като най-вероятно вече осъзнах, че за да изпълни на тази последователност, (от 1 до 3), сървърът трябва също така да използвате сесия и да го съхранява потребителско име.

Така че, атаката ще бъде, че когато отидем на страницата за възстановяване и въведете вашето потребителско име администратор на сървъра, в сесията се отбележи, че за потребителя - администратор, администратора и дисплеи за таен въпрос. Всичко! Ние не може да налага нищо, просто отидете на неофициалния раздел на сайта. Сървърът изглежда сесия ще се види, че потребителското име на администратор, и ще ни даде достъп. Това означава, че по време на възстановяване на паролата ние "положение" ни изисква да ценим и след това да сърфирате частните части. Bug тук и че сайтът използва една променлива име и удостоверяване, както и за възстановяване на паролата.

На пръв поглед може да изглежда, че този тип уязвимост - рядкост. В действителност не е така. Аз лично намерих доста често в такива продукти. Просто аз не знам дали това се нарича.

Между другото, в допълнение към удостоверяване байпас, използвате тази техника може да се подобри привилегията да скочи или стъпите на операциите по многоетапни ...

Как да търся за този тип грешки? В действителност, някои supermetodiki за това. Но като начало, което трябва да се появи на входните пунктове в заявлението, с потенциал да повлияят на стойностите в променливите на сесията. И след това - на мозъка, ръцете и тест, тест, тест.

За да се атакува с фалшив Host

Друг пример за почти логически уеб уязвимости. Тя се основава на заглавната фалшификация домакин HTTP-заявка. По-точно, в отсъствието на своя уебсайт тест в последващото му използване. Но в ред.

Като цяло, от гледна точка на сигурността на, това е малко странно, но безобидна ситуация. Тя ще изглежда така, като се замести името на домейна си в приемащата, можем да направим един ресурс, за да изтеглите нашите JS-скриптове (помисли - XSS). Но за да се направи браузър някой друг да направи същото (тоест, за да вмъкнете грешен хост), в действителност, е невъзможно. Така че от гледна точка на СОП от тук всичко изглежда съвсем нормално.

И все пак в тази атака нещо определено има.

Лесно хак хакерски тайни на прости неща
В случаите, когато стойността на хоста се връща като пътя към страница с информация

почивка UPnP

Universal Plug и Play (UPnP) - набор от мрежови протоколи, които са били създадени, за да се улесни взаимното констатация друго устройство, както и тяхното взаимодействие. Устройство в този случай може да бъде почти всичко: рутер, принтер SmartTV, някои Windows услуги ... Въпреки че, може би, UPnP, терминът изглежда е непознат за вас, в действителност, това е много, много общо помежду си.

От гледна точка на един пример на взаимодействието може да се гледа в посока на Skype или BitTorrent и Wi-Fi рутери. Първо с UPnP може да намери рутера и да го изпрати на набор от команди за изпращане на външната порта вътре. Много удобно, за да получите: няма проблеми с ръчно регулиране порт forwarding'a.

UPnP се базира на множество протоколи, но и по-важното е, в определен логическа последователност:

Лесно хак хакерски тайни на прости неща
SSDP ИЗВЕСТЕТЕ ми WiFi-рутер

Освен подслушване 239.255.255.250, ние "принудят" да изпратите заявка M-търсене за него на порт 1900. UPnP сървъри ще трябва да отговори на това искане. Запознайте се с едни и същи Уведоми-пакет.

Така че, първата задача - тя е в действителност, да получите списък на UPnP сървъри и адреси до XML'ek, с пълно обяснение на функциите на всеки един от услугата Server. Това е важно, защото като пристанището, както и URL адреси могат да бъдат различни от различни производители.

Идентифициране на възможности. Така че, от SSDP получаваме списък от услуги, във връзка с тяхното описание в XML формат. За да получите достъп до тях вече се използва от един обикновен HTTP. Този файл е описание на всяка една от услугите, както и линкове към XML-файлове със списък от възможни действия за всеки от тях. Това означава, че в този случай XML'ki - това е просто статично описание на всички възможности на услугата, както и списъка на входни точки за услуги и данни, необходими за извършване на действия.

Control. Получаване XML'ki данни, ние вече можем да създадем сапун пакетите и ги изпраща на сървъра HTTP, така че някои действия на сървъра.

Authentication, както казах и преди, липсва, и сървърът ще извърши всички действия, които ще дойдат в SOAP-искането.

Лесно хак хакерски тайни на прости неща
И тук е SOAP-команда Port Forwarding на

За съжаление, този метод не работи вече: тъй като затегна пясък на Flash и не можем да изпратим произволни пост-заявки (най-важното, което трябва да се добави още един удар с глава на SOAPAction) на всеки друг хост (защото първото искане ще позволи правила crossdomain.xml).

Така че, сега, мисля, че ние можем да видим как работи всичко. Нека да видим какво можем да направим за него.

Първо, тя първо отваряне на възможността SOAP'a. В допълнение към изпращане примера пристанища, има случаи, в които можем да се променят настройките на маршрутизатора и подлагайте DNS-сървър. И това е хо! Всичко зависи от вашата конкретна хардуер, услуги и въображението ни.

На трето място, ние можем да си пробие услуги. Преди година направихме Rapid7 Смешни изследвания UPnP. Те proskanili Интернет на SSDP и SOAP (на стандартните портове), да ги pofingerprintili. Оказа се, че повечето от UPnP-сървъри построена на четири SDK. Открояват MiniUPnP и Portable UPnP (libupnp), който "държи" повече от половината. Но по-важното е, че почти всички сървъри използват по-старата версия на библиотеките, всяка от които има един куп уязвимости, включително тези, водещи до RCE. И в SOAP'e и SSDP.

В допълнение, това проучване показва как в действителност много такива устройства стърчат, дори и ако SSDP. Това означава, че дори ако същият SOAP е затворен, за да изтеглим дистанционното управление на устройството чрез SSDP.

Разбира се, трябва да се отбележи, че това може да не е много лесно с дистанционното sploitingom, тъй като тези устройства често са изградени върху който и да е MIPS, ARM, че само усложнява всичко. Освен това, е необходимо да отвърне на удара и да се защити механизмите за операционната система на паметта (един и същ ASLR). Но все пак е възможно.

Това, което трябва да се прекъсне всичко?

Инструменти в действителност малко. В metasploite модул за търсене UPnP (CVE и детективът от тях). Плюс това, има два "комбайн", което изпълнява SOAP-екип. Това е Миранда и UMAP. И двете са написани на Python, малко под * никс и тя не работи много добре.

Надявам се, че сте прочели бе изпълнен с ентусиазъм и страст за цял живот, така че ако искате да poreserchit - пише на кутията. Винаги щастлив :). И успешен нови знания!

Покажете тази статия на приятел: