Рубрика: Без рубрики

  • Транспортный уровень модели OSI или как осуществляется передача по TCP/IP

    Транспортный уровень модели OSI или как осуществляется передача по TCP/IP

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

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

    Наверное, многие из вас слышали такие слова как SYN-FLOODING или IP-SPOOFING. Все это разновидности атак — первая D.O.S. (атака на вывод из строя ресурса сети интернет), вторая состоит в подмене IP-адреса. На первый взгляд между этими примерами нет ничего общего, но между тем, это не так — обе эти атаки не возможны без знания протокола TCP, протокола на котором построена сеть Интернет.

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

    Начнём

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

    Структура TCP-пакета:

    Структура TCP-пакета

    Поясню только самые важные места:

    Адрес получателя, порт получателя и адрес отправителя, порт отправителя — это надеюсь понятно.

    Sequence Number (SYN) — номер очереди или последовательный номер, показывает порядковый номер пакета при передаче, именно поэтому принимающая система собирает пакеты именно так, как надо, а не в том порядке, как они пришли.

    Acknowledgment Number (ACK) — номер подтверждения, показывает, на пакет с каким SYN отвечает удаленная система, таким образом мы имеем представление, что удаленная система получила наш пакет с данным SYN.

    Контрольные биты- 6 бит (на схеме между reversed и window). Значения битов:

    URG: поле срочного указателя задействовано
    ACK: поле подтверждения задействовано
    PSH: функция проталкивания
    RST: перезагрузка данного соединения
    SYN: синхронизация номеров очереди
    FIN: нет больше данных для передачи

    DATA — это непосредственно те данные, которые мы хотим передать.

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

    Когда мы хотим установить соединение, мы отправляем удаленной системе пакет следующей структуры:

    Client — SYN (856779) — Host

    Где Client- это мы, a Host — это удаленная система. Как ты видишь, мы посылаем пакет лишь с указанием SYN — это значит, что этот пакет первый, мы ни на что не отвечаем (отсутствует ACK). Данный пакет выглядит примерно так:

    20 53 52 43 00 00 44 45 53 54 00 00 08 00 45 00 00 2C C3 00 40 00 20 06 10 0C CB 5E FD BA CB 5E F3 47 04 07 00 17 00 0D 12 CB 00 00 00 00 60 02 20 00 D9 70 00 00 02 04 05 B4 2D

    Интересный момент в том, откуда берется SYN. SYN образуется от первоначального номера очереди (ISN) — это 32-битный номер от 1 до 4294967295 (2 в 32-ой степени). ISN при перезагрузке системы равен 1, затем каждую секунду он увеличивается на 128000 (строго говоря изменение происходит каждые 4 микросекунды) + при каждом установленном соединении он увеличивается на 64000. Получается, что цикл уникальности ISN, при условии того, что никакие соединения не устанавливались, составляет примерно 4,55 часа. Поскольку ни один пакет так долго по сети не путешествует, мы можем полагать, что SYN будет абсолютно уникальным.

    Получив наш пакет, удаленная система отвечает, что получила и готова установить соединение. Данные пакет выглядит так:

    Host — SYN (758684758) и ACK (856780) — Client

    Как видишь, удаленная система дает понять, что получила наш пакет. Для этого она посылает нам ACK с номером «наш SYN+1». В добавок к этому удаленная система посылает нам свой SYN (мы же тоже будем отвечать). А ответ наш будет такой:

    Client — SYN (856780) и ACK (758684759) — Host

    Думаю тебе уже должно быть все понятно. Если кто не понял, то пакет означает следующее: ваш пакет с SYN (758684758) получен, соединение установлено, наш SYN равен 856780.

    Эту процедуру называют «троекратным подтверждением» или «троекратным рукопожатием». Первые два этапа необходимы для синхронизации SYN наших систем, а третий — подтверждение того, что синхронизация произошла.

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

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

    Client — FIN(4894376) и ACK (1896955378) — Host

    Host — ACK (4894377) — Client

    Host — FIN (1896955378) и ACK (4894377) — Client

    Client — ACK (1896955378) — Host

    Думаю, ничего сложного здесь нет. Единственное, что стоит отметить — это флаг FIN, который означает желание завершить соединение.

    Подводя небольшие итоги вышеизложенному, отметим в каких же случаях изменяются или не изменяются порядковые номера:

    Передача одного FIN Пакета = +1
    Передача одного SYN Пакета = +1
    Передача одного ACK Пакета = 0
    Передача одного SYN/ACK Пакета = +1
    Передача одного FIN/ACK Пакета = +1
    Изменение за 1 секунду = +128,000
    Установление одного соединения = +64,000

    Возможно, кто-то спросит: «А что будет, если машин получит пакет с таким ACK, которого не было?» (SYN=ACK-1, а пакет с таким SYN мы не посылали). Получив ответ непонятно на что, мы в свою очередь ответим удаленной системе NACK-пакетом (означает «не знаю о чем ты», никакого соединения не устанавливается), но, надеюсь, более подробно мы поговорим с тобой об этом в следующий раз.

  • Перехват sms любого оператора через SS7

    Перехват sms любого оператора через SS7

        Бывший подрядчик АНБ и сотрудник Booz Allen Hamiltom Эдвард Сноуден много рассказал в своих откровениях о работе АНБ о том, как они перехватывают СМС и записывают телефонные переговоры по всему миру. Конечно, если бы всё это происходило только на территории США вопросов бы не возникало.

    Видео: примерно так работают специалисты АНБ с иностранными операторами мобильной связи и провайдерами интернета для организации канала просмотра электронной почты и СМС не только американских граждан

    Спрашивается, как АНБ может прочитать СМС сообщения Васи Луценко, являющегося абонентом Киевстара из Мариуполя? Оказывается очень просто. Всё телекоммуникационное оборудование сотовой связи произведено в США и имеет скрытые возможности удаленного управления без ведома оператора связи и спецслужб Украины.

    Об этом как-то рассказывал Сергей Гордейчик на одной из конференций — вот видео и текст его выступления http://vk.com/topic-33995074_26688537

    Но и это ещё не всё. Оказывается, теперь и сотрудники операторов мобильной связи тоже могут просматривать чужие СМС после того как Сноуден рассказал о бэкдорах в оборудовании всему миру через газету Gardian и сайт WikiLeaks.

    перехват любых SMS при помощи SS7


    Служба Беспеки Украины в настоящее время приняла уже ряд мер по недопущению утечек персональных данных из компаний мобильной связи через описанные Эдваром Сноуденом недокументированные возможности телекоммуникационного оборудования.
  • Do ATMs face new malware threat?

    Do ATMs face new malware threat?

        Research about a new malware attack aimed at U.S. ATMs is garnering attention, but security experts disagree about how threatening this type of attack really is.

    ATM networks are actually very secure

    In April, researchers at security and computer forensics firm Group-IB said they’d discovered new strain of malware designed to target card data stored on or transmitted through point-of-sale devices. While the Group-IB’s report notes ATMs, the company says the malware it had identified had only, so far, been affecting POS systems. The mention of ATMs related more to cultural differences in Eastern Europe. The terms ATM and POS are more often used interchangeably there, Group I-B states.

    However, since publishing the report, the company has noted that ATMs could be vulnerable, if the networks that process their transactions are attacked by malware.

    But Gary Warner, director of research for computer forensics at the University of Alabama at Birmingham and chief technologist at online security firm Malcovery, says ATM networks are actually very secure. While Trojans aimed at retailer POS systems and networks, such as those that targeted MAPCO Express, Bashas’ Family of Stores and Schnucks Markets Inc. are increasingly common, attacks on ATMs are rare, he says. 

    Warner contends the real worry for banking institutions is not attacks on ATMs, but the insiders who often facilitate the compromises. «The most vulnerable POS systems are the ones where insiders, or worse yet, customers, have the ability to insert a USB drive to a Windows-based register that has an attached card reader,» he says. «Mall kiosks are perhaps the most likely place to see this type of software, as the kiosks are often left logged-in and unattended.»

    Nevertheless, some security consultants say banks and credit unions should view new malware as a serious threat to ATMs.

    «It’s the logical evolution of skimming,» says Al Pascual, a financial fraud expert at consultancy Javelin Strategy & Research. «How the malware functions is nothing new, but hackers have leveraged their experience in compromising Windows-based POS systems to now do the same with ATMs.»

    Pascual says banking institutions in the U.S. and abroad have reported increases in ATM fraud. «Unfortunately, that increase is likely to persist with the advent of this new threat,» he says.

    Dump Memory Grabber 

    The malware identified by Group-IB, called Dump Memory Grabber by Ree[4], can attack any Windows-based system, the firm’s researchers say. The typical attack uses an .exe file for RAM memory scanning of credit card data when the network is attacked and then transmits logs containing intercepted card data through FTP gateways, researchers say.

    Group IB says attacks using Dump Memory Grabber have been successful through remote access against POS devices and systems running on Windows XP and Windows Embedded. The firm’s researchers also point out that the malware could exploit similar vulnerabilities in ATMs that are connected through virtual private networks or wireless Global System for Mobile, or GSM, and General Packet Radio Service, or GPRS, networks.

    But Warner believes that assumption is a bit of a leap. «I see absolutely nothing to indicate infections of ATMs,» Warner says.

    «In the past, it has been shown that certain ATM machines were actually managed through some form of remote terminal, including remote desktop or VNC [virtual network computing],» he says. «The implication here is that it would be possible to install this malware onto an ATM machine directly if the ATM machine was running remote desktop on Windows and the hackers either had credentials or the ability to acquire, brute force, or hack the RDP/VNC installation on the ATM.» But those scenarios aren’t likely, Warner says. 

    The researcher believes that the Dump Memory Grabber is not really new. «My belief right now is that Dump Memory Grabber by Ree — the malware by Wagner Richard that Group-IB talked with — is actually the same malware that Symantec calls vSkimmer and that others call BlackPOS,» he says.

    vSkimmer is believed by some to have been the malware used in the February attack on Bashas’ corporate network that allowed hackers to gain access to the retailer’s internal systems and capture sensitive payment information.

    Serious Threat? 

    Jerome Segura, a senior researcher at malware-detection provider Malwarebytes, says the threats outlined by Group-IB should not be taken lightly.

    «I’ve obtained a copy of an actual malware file and it pretty much does what it’s supposed to do: hook onto the system, then call back the command-and-control server located in Russia,» he says. «Probably the most difficult part might be to get the malware onto an ATM or point-of-sale machine. But since everything is wired, one could think that hacking into a company’s network could give them access.»

    Segura acknowledges, however, that an attack on an ATM would more likely occur through an insider — someone who is able to intentionally load malware while servicing the machine.

    Like Warner and Segura, fraud analyst Shirley Inscoe, who works for the consultancy Aite, says employees and contractors are often the sources of attacks that compromise systems and devices, such as ATMs.

    «Fraud rings have been known to target institutions and have members of their rings apply for certain positions in an effort to facilitate their crimes,» she says. «They also have been known to do everything from paying employees to do certain things — or not to do certain things, such as comply with policies — to threatening members of employees’ families to gain their cooperation. So, in a nutshell, while I have no substantive proof that employees may be enabling much of this fraud, I would be very surprised if they are not enabling some portion of it.»

  • На площадке процессинга начали работать из мобильных приложений

    На площадке процессинга начали работать из мобильных приложений

    Бывший аналитик Booz Aleen Hamilton — ныне эксперт по безопасности Эдвард Сноуден, предоставлявший консалтинговые услуги АНБ, объявил результаты своего исследования «Работа дроповода с использованием мобильного банкинга: возможность реализации залива на карту или счёт с использованием MiTM (заливщик посередине)» 
    залив на карту из мобильных приложений Darkmoney
    Сноуден данной темой последние несколько лет, регулярно выступая с докладами на международных конференциях BlackHat, HackInParis и ZeroNights.
    В прошлом году компания Booz Allen Hamilton постаралась систематизировать сферу заливов и обнала с использованием средств мобильного банкинга и подход к анализу этого рынка услуг, а также провела статический анализ работы дроповодов с использованием 40 приложений для iOS и Android. В рамках нового исследования рассмотрено уже не по 40 приложений для двух ОС, а примерно по 60, включая денежные заливы через мобильные банк-клиенты Альфа-Банка, банка «Авангард», банка «Балтика», ВТБ, Газпромбанка, Промсвязьбанка, РайффайзенБанка, СИАБ, Ситибанка, Уралсиб, Ханты-Мансийского банка и других.
    Комментирует Эдвард Сноуден: «На этот раз мы решили сосредоточиться на поиске одной из самых опасных уязвимостей в сфере мобильного банкинга, связанной с недостаточной защитой транспортного уровня или её отсутствием. Данная проблема может привести к реализации атаки MiTM и заливу денег со счетов клиентов на карты и счета подконтрольных дропов».
    В рамках исследования рассматривались ОС Android и iOS, как наиболее распространенные и имеющие наибольшее количество приложений для мобильного банкинга. Эксперт выяснил, что из всех рассмотренных мобильных банк-клиентов с iOS 14 % подвержены краже денег только с помощью MitM-атаки, а с Android 23 %. Сочетание других уязвимостей может также привести к краже денег со счетов клиентов. При этом стоит отметить, что только один банк из 79 изученных имеет одновременно уязвимое приложение для iOS и Android.
    В ходе исследования эксперт также сделал ряд интересных находок, напрямую не связанных с основной темой. Например, в ответах сервера иногда приходят отладочные трейсы, раскрытие внутренней банковской информации (даже информация об АБС, автоматизированной банковской системе). Или можно провести атаки “User Enumeration” — получения списка действующих логинов пользователей банковского учреждения.
    Опираясь на приведенные выводы исследования, а также на другие подробные факты и находки, можно со всей уверенностью заявить, что существенное число российских банков до сих пор не уделяет должного внимания безопасности мобильного банкинга, что представляет широкий фронт работ для реальных заливщиков и дроповодов. Между тем, с развитием мобильных банковских технологий со временем всё больше транзакций будет совершаться онлайн. И если уязвимости будут существовать и множится, их эксплуатация будет приводить к массовым заливам финансовых средств на счета дропов со счетов клиентов банковских учреждений.
  • Система мониторинга ONION-доменов tor

    Система мониторинга ONION-доменов tor

    Каждый резидент сети может предоставить свои вычислительные ресурсы для организации Node-сервера — узлового элемента сети, который выполняет функцию посредника в информационном обмене клиента сети. 
    Существует два типа узлов сети tor: промежуточные и выходные (так называемые exit node). Последние являются крайним звеном в операции расшифровки трафика, а значит, представляют собой конечную точку, которая может стать каналом утечки конфиденциальной или просто интересной информации.
    перехват трафика через tor exit node

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

    Однако, решение задачи агрегации актуальных сайтов лежит на поверхности и за ним далеко ходить не потребуется. Для того, чтобы составить список недавно посещённых onion-ресурсов, просто нужно отследить факт обращения к ним. Как ты уже наверное заметил, exit node является конечной точкой на пути следования зашифрованного трафика, а значит, ты можешь свободно перехватывать пакеты HTTP/HTTPS-соединений Tor-пльзователя, который занимается серфиногом в «традиционном вебе».

    Известно, что HTTP-пакет может содержать информацию о посещённых ранее ресурсах. Данные находятся в заголовке запроса Referer, который может содержать URL источника запроса. В «традиционном вебе» данная информация помогает веб-мастерам определить, по каким запросам в поисковых системах и с каких сайтов переходят пользователи контролируемого веб-узла.

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

    Слив данных из сети onion tor