SeoNews.com.ua - SEO & Search Engine News
Поисковая оптимизация
Популяризация токенов способна значительно повысить уровень безопасности в сфере электронной коммерции
Эксперты предлагают заменить передаваемые на торговые серверы финансовые данные электронными идентификаторами, не имеющими ценности для злоумышленников.

Как сообщает издание Network World со ссылкой на доклад одного из крупнейших производителей токенов безопасности, широкомасштабное внедрение такой меры, как дополнительные этапы идентификации, способно в значительной степени сократить количество успешных хакерских атак в сфере электронной коммерции.


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

Как сообщает издание "Известия", депутаты Госдумы РФ выступили с предложением внести некоторые коррективы в закон «О персональных данных», согласно которому социальные сети и сервисы электронной почты будут обязаны сохранять информацию о конфиденциальных данных граждан РФ на серверах, которые располагаются на территории России. Указ был подписан В. Путиным в июле текущего года, и вступает в действие 1 сентября 2016 года. Тем не менее, госчиновники предлагают ускорить процесс и узаконить перенос личной информации пользователей уже с 1 января следующего года.

Пользователям Wi-Fi в московском метро скоро придется регистрироваться
По просьбе руководства столичного метрополитена компания «Максима Телеком» разработала программное обеспечение, посредством которого будет происходить аутентификация пользователей.

В скором времени все желающие воспользоваться услугами Wi-Fi в Московской подземке смогут сделать это только по регистрации. По просьбе администрации метро компания «Максима Телеком» разработала ПО для аутентификации пассажиров. Новая система будет распознавать посетителей подземки по IMEI-номерам их девайсов, пишут «Известия».

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

Как сообщает издание «Ведомости» со ссылкой на собственных информаторов в двух компаниях из четверки крупнейших зарубежных аудиторов в РФ, отечественные силовые структуры усилили давление на компании и в перспективе могут лишить их возможности работать с данными, представляющими собой государственную тайну.
Началась последняя неделя льготной регистрации на конференцию CEE-SECR «Разработка ПО»
На конференции рассмотрят все аспекты разработки программного обеспечения.

Стартовала последняя неделя льготных летних цен на конференцию CEE-SECR «Разработка ПО» — одно из важнейших событий ИТ-индустрии в России.

До 31 августа регистрационный взнос будет ниже финальной цены на более чем 37%. Кроме того, продолжают действовать специальные предложения для студентов, аспирантов и групп от трех человек. Все скидки суммируются


Seo News
Facebook готовит исправление уязвимости, заставляющей iPhone совершать звонки
Разработчики социальной сети намерены устранить брешь в ближайшем обновлении мобильного приложения для iOS.

Как сообщают представители социальной сети

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

В Facebook отметили рост количества провайдеров, развертывающих шифрование с помощью STARTTLS.

95% посылаемых Facebook по электронной почте уведомлений, являются зашифрованными. Электронные письма шифруются с помощью свойства протоколов под названием «Совершенная прямая секретность» (Perfect Forward Secrecy, PFS) и строгой проверки подлинности сертификата. Об этом сообщил инженер Facebook Майкл Эдкинс (Michael Adkins), занимающийся вопросами неприкосновенности сообщений пользователей.

Microsoft представит Windows 9 в конце сентября

В ранней версии Windows 9 будет добавлено переработанное меню "Пуск" и, возможно, голосовой помощник Cortana.

В компании Microsoft планируют представить следующую версию ОС Windows во время специального события для прессы, которое состоится в конце сентября. Как сообщает издание The Verge, ссылаясь на собственные источники, в настоящее время представители корпорации собираются рассказать об изменениях в новой версии Windows, получившей кодовое наименование «Threshold» («Предел»), 30 сентября этого года. Напомним, что следующая версия Windows в настоящее время находится в разработке, и в Microsoft планируют выпустить предварительную версию ОС для разработчиков (Developer Preview) 30 сентября или позже.

Google AdWords забанит пейнтбольное и прочее оружие
Менее чем через месяц Google запретит рекламу оружия для страйкбола и пейнтбола, пневматических пистолетов, боеприпасов, обойм и портупей. Жалобы на такую рекламу ранее поступали в Google AdWords Help.

Google опубликовал предварительную версию изменения политики, которая в настоящее время позволяет рекламировать такие товары на AdWords.

Вот образец письма, отправленного рекламодателям AdWords:

«Уважаемый рекламодатель AdWords,

Мы извещаем вас об изменении правил размещения рекламы Google, которые могут повлиять на ваш аккаунт AdWords.


Уязвимость в Windows продолжает создавать опасность для пользователей
Наиболее часто уязвимость CVE-2010-2568 эксплуатировали на ОС Windows XP.

Согласно документу, опубликованному Лабораторией Касперского, злоумышленники продолжают эксплуатировать уязвимость CVE-2010-2568 , несмотря на “возраст” бреши. Недавно Лаборатория Касперского обнаружила десятки миллионов эксплоитов, направленных на устранение ошибки в период с ноября 2013 по июнь 2014 года, которые не устранили ее. Жертвами кибератаки стали 19 миллионов пользователей по всему миру.

Search Engine News
Подпишись на рассылку и будь всегда в курсе наших новостей.

Битвы хакеров: разбор заданий PHDays CTF Quals

Битвы хакеров: разбор заданий PHDays CTF Quals
Positive Hack Days CTF — международные соревнования по защите информации, которые проводятся по игровому принципу Capture the Flag.

Positive Hack Days CTF — международные соревнования по защите информации, которые проводятся по игровому принципу Capture the Flag. Несколько команд в течение заранее отведенного времени защищают свои сети и атакуют чужие. Основная задача участников — выявлять уязвимости в системах противников и получать доступ к секретной информации (флагам), при этом обнаруживая и устраняя подобные уязвимости в своей системе.

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

В этом году PHDays CTF состоится уже в четвертый раз. Впервые соревнования прошли во время форума Positive Hack Days в 2011 году, тогда победителями стали участники американской команды PPP, в следующем году победила российская команда Leet More, а на PHDays III чемпионами стали Eindbazen из Голландии. Каждый год в PHDays CTF принимают участие команды со всего мира — от США до Японии.

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

2.jpg

Задания и атмосфера

По сложившейся традиции игровые задания и инфраструктура подготавливаются в соответствии с легендой соревнований — специальной сюжетной линией, которая превращает простой набор задач PHDays CTF в увлекательное состязание, у которого есть цель. Например, в прошлом году участники спасали от гибели вымышленный мир D’Errorim. Предстоящие соревнования продолжат этот сюжет .

Задания соревнований, как правило, основаны на реальных прототипах: уязвимости, заложенные в задания и сервисы CTF, можно встретить в различных системах в реальной жизни. Соревнования PHDays CTF интересны и оригинальными игровыми механиками, которые делают возможной реализацию разных и непохожих друг на друга стратегий ведения игры (подробнее на сайте PHDays ).

Обычно организаторы готовят для команд необычные задания, напрямую не связанные со взломом. Например, во время PHDays 2012 дополнительные очки можно было заработать обнаружив бонусные флаги в специальном контейнере с мусором, а во время PHDays III команды должны были быстрее всех преодолеть « хакерский лабиринт » — полосу препятствий с лазерным полем, датчиками слежения, секретными дверьми, комнатой с жучками и другими интересными испытаниями.

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

Разбор

Квалификационный этап соревнования (PHDays CTF Quals) относится к типу task-based CTF, то есть команды должны решать задания и получать за них очки. Задания могут относиться к одной из следующих категорий:

• Forensic — компьютерно-криминалистическая экспертиза,

• Reverse (reverse engineering) — анализ бинарного кода,

• Pwn — эксплуатация уязвимостей,

• Admin — навыки администрирования,

• Network — знание сетевой инфраструктуры и протоколов,

• Crypto — криптография,

• Stegano — стеганография,

• PPC (professional programming and coding) — олимпиадное программирование,

• Web — поиск и использование веб-уязвимостей,

• Misc — разное.

Начнем с последней категории.

Неочевидные задания

Участникам PHDays IV CTF Quals в рамках одного из заданий нужно было расшифровать сообщение, скрытое в mp3-файле .

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

В нашем случае все несколько иначе. Если открыть предложенный файл в текстовом редакторе, то он выглядит вот так:

0000000000: 49 44 33 04 00 00 00 00 │ 1F 76 54 52 43 4B 00 00 ID3♦ ▼vTRCK

0000000010: 00 09 00 00 01 FF FE 30 │ 00 31 00 00 00 52 47 42 ○ ☺яю0 1 RGB

0000000020: 37 00 00 00 0D 00 00 03 │ 35 2C 31 38 33 2C 20 4E 7 ♪ ♥5,183, N

0000000030: 55 4C 4C 00 52 47 42 36 │ 00 00 00 0A 00 00 03 30 ULL RGB6 ◙ ♥0

0000000040: 2C 34 32 2C 31 35 39 00 │ 52 47 42 35 00 00 00 0C ,42,159 RGB5 ♀

0000000050: 00 00 03 31 39 34 2C 32 │ 34 34 2C 36 38 00 52 47 ♥194,244,68 RG

0000000060: 42 34 00 00 00 09 00 00 │ 03 34 37 2C 37 37 2C 36 B4 ○ ♥47,77,6

0000000070: 00 52 47 42 33 00 00 00 │ 0B 00 00 03 34 34 2C 37 RGB3 ♂ ♥44,7

0000000080: 33 2C 31 34 31 00 52 47 │ 42 32 00 00 00 0C 00 00 3,141 RGB2 ♀

0000000090: 03 31 34 30 2C 32 30 37 │ 2C 37 32 00 52 47 42 31 ♥140,207,72 RGB1

00000000A0: 00 00 00 0D 00 00 03 31 │ 32 30 2C 31 35 36 2C 32 ♪ ♥120,156,2

00000000B0: 30 33 00 00 00 00 00 00 │ 00 00 00 00 00 00 00 00 03

00000000C0: 00 00 00 00 00 00 00 00 │ 00 00 00 00 00 00 00 00

00000000D0: 00 00 00 00 00 00 00 00 │ 00 00 00 00 00 00 00 00

В начале файла располагаются метаданные в формате ID3. Сначала идет тег TRCK (track number), а потом — какие-то куски текста:

RGB7 5,183, NULL RGB6 0,42,159 RGB5 194,244,68 RGB4 47,77,6 RGB3 44,73,141 RGB2 140,207,72 RGB1 120,156,203

Эту информацию можно разбить на семь записей (от RGB7 до RGB1):

RGB7 5,183, NULL

RGB6 0,42,159
RGB5 194,244,68

RGB4 47,77,6
RGB3 44,73,141

RGB2 140,207,72 RGB1 120,156,203

После каждого из RGB-идентификаторов стоит три значения. Обычно это числа, но в одном случае — NULL. Легко предположить, что это массив записей, каждая из которых содержит до трех однобайтовых значений. Можно записи отсортировать, объединить, превратить десятичные коды в символы и вывести в шестнадцатеричном виде, например, при помощи вот такой программы:

>>> a = [120,156,203, 140,207,72, 44,73,141, 47,77,6, 194,244,68, 0,42,159, 5,183]

>>> print "".join(map(chr, a)).encode("hex")

В результате получим:

789ccb8ccf482c498d2f4d06c2f444002a9f05b7

Шестнадцатеричная последовательность начинается с байтов с кодами 0x78 0x9С, а это подсказывает нам, что используется алгоритм сжатия данных zlib. Если использовать zlib в режиме компрессии с параметрами по умолчанию, выходная последовательность будет начинаться именно с этих байтов.

Одним вызовом функции decompress библиотеки zlib в Python можно распаковать упакованное сообщение:

>>> import zlib

>>> print zlib.decompress("".join(map(chr, a)))

И тогда будет выведен текст:

i_hate_ucucuga

Именно этот флаг нужно было отослать организаторам соревнований.

Неправильная криптография

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

> REQUEST EXCHANGE

KEY 7abed4245dec0a5df17c672d799488c7b5ef5b9110c43e0c 3eae586c21b7369095569fc3aa0cc2cde94a362cc6e7902b8bb1bd6d32f358d 8e7091e7e8c48b9fa2aabe1579328cfa18e55927c5e9c7d50ccba5b5f4e173b 606b65a95c6f6c27b9fa8b482c45ce9605700856869b2beb7f663bf6244902a b57bf681a31fdbe86d7107daa7cc53dcff6633cb7a591508da29e1016dc8521 1f83052efc8e987e4d5cf5bac407ee187795dbba722e8b3650c555d119c556 76a5ff90af6a0eabbba477/010001
MSG 2cb5e614c40eb325cdcec0410884b5e4b20cb63c39f93b720710b2b4a2d66b7 6588129d24172faf0ef84ca02b3f89b718eaf2a7ba7a13e444a7772ed79b3db6 c621c02a0d32ec09c510fcd39b1c76d715507de8634d217dceb33cb4d0cb030 9b58bf89e4e27e6ab0a24c32f97d820013cefcd35408e12d11644928a368526 d1482503995c0d3921164fc0b301329ffb1aac13f66dcaa21a6f63e371308be1 2366de0e68db27751ec12f9e02976bc52b2a2888f07608d26a637a46f03a6f1a1ab
print hex(int(time.mktime((2014,1,21, 18,37,52, 0,0,0))))

0x52de8640

Теперь копируем файл ShadeIt9000.exe в ShadeIt9000_f.exe и исправляем его.

По смещению 00015557 надо байты

E8 A5 31 01 00

заменить на

B8 40 86 DE 52

Это эквивалентно замене

call _time

на

mov eax,52de8640h

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

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

import os

bmp=open("derrorim_enc.bmp", "rb").read()

hdr = bmp[:0x36]

abData = bytearray(bmp[0x36:])

cbBody = len(bmp) - len(hdr)

open("00.bmp", "wb").write(hdr + '\0'*cbBody)

open("XX.bmp", "wb").write(hdr + '\2'*cbBody)

os.system("ShadeIt9000_f.exe 00.bmp")

os.system("ShadeIt9000_f.exe XX.bmp")

В файле 00_enc.bmp окажется результат зашифрования картинки, состоящий из нулевых байтов. Это и будет гамма в чистом виде.

В файле XX_enc.bmp окажется результат зашифрования картинки, состоящий из байтов со значением 2. Это поможет нам узнать, на сколько битов циклически сдвигался каждый байт.

Наконец, расшифровыванием Shadelt9000:

def rol(v,i): return (((v<<i) & 0xFF) | ((v>>(8-i)) & 0xFF))

def ror(v,i): return (((v>>i) & 0xFF) | ((v<<(8-i)) & 0xFF))

dRot = {rol(1,i):i for i in xrange(8)}

bmp=open("derrorim_enc.bmp", "rb").read()

hdr = bmp[:0x36]

abData = bytearray(bmp[0x36:])

abGamma = bytearray(open("00_enc.bmp", "rb").read()[0x36:])

abRot = bytearray(open("XX_enc.bmp", "rb").read()[0x36:])

for i,b in enumerate(abGamma): abRot = dRot[abRot ^ b]

for i,b in enumerate(abGamma): abData = ror(abData ^ b, abRot)

open("derrorim.bmp", "wb").write(hdr + str(abData))

получаем:

5.png

Выше был описан верный, но не самый эффективный путь решения задания. Есть способ короче.

Сразу за вершинным шейдером по адресам 0x47F848 и 0x47F9A0 лежит упакованный zlib-код пиксельного и вершинного шейдера для выполнения обратного преобразования. Возможно, он был случайно забыт разработчиком задания. А может и оставлен намеренно.

Коды вершинного шейдера для зашифрования и расшифрования идентичны, так что трогать их не имеет смысла. А что будет, если подменить пиксельный шейдер?

Копируем ShadeIt9000_f.exe в ShadeIt9000_d.exe и исправляем его:

00015775: 60 F6 ==> 48 F8

Затем запускаем ShadeIt9000_d.exe derrorim_enc.bmp. И получаем на выходе расшифрованный файл derrorim_enc_enc.bmp, который (за исключением мелких артефактов) совпадает с тем, который мы расшифровали скриптом на Python.

На сегодня все! Всем спасибо за внимание, будем рады ответить на вопросы в комментариях.

P. S. Архив всех заданий PHDays CTF и CTF Quals можно найти на сайте PHDays . Так что, если есть желание испытать себя — вперед!