• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

Программирование

Статья GetSystemFirmwareTable() – чтение и разбор таблицы SMBIOS

  • 7 091
  • 1
Инженеры Microsoft тщательно оберегают свой системный периметр, жёстко пресекая попытки вторжения в ядерное пространство Win из вне. Анархия и вседозволенность закончилась с приходом ХР-SP3, когда юзеру был закрыт доступ к устройству \\Device\PhysicalMemory. До этого, в XP-SP2 и ниже, функцией NtOpenSection() можно было без проблем открыть любую область физической памяти как на чтение, так и на запись, со-всеми вытекающими последствиями. В результате, черви и прочая малварь чувствовала себя в ядре вольготно, поэтому мелкософт поспешил прикрыть эту лавочку. Таким образом, системе XP-SP3 выпала честь оказаться единственной, где юзеру был закрыт полный доступ к физ.памяти ОЗУ.

Однако корпорации строят операционные системы для потребителей, а им явно не понравилось такое решение. Так, чтобы не спровоцировать очередную "бурю в стакане"...

Статья ASM – анатомия кодировки "Base64"

  • 12 303
  • 2
Традиционные способы передачи данных по протоколу HTTP имеют существенный недостаток – это транспорт исключительно для текстовой информации, о чём и свидетельствует его название "Hyper-Text Transfer Protocol" (протокол передачи гипер-текста). Он находится на самом верхнем уровне(7) модели OSI, а потому пользователям в нашем лице приходится взаимодействовать именно с ним. Это создаёт определённые трудности, когда нужно передать по e-mail не текстовые, а бинарные данные ..например картинки, аудио/видео-файлы, или зипнутые архивы. Вопрос встал остро с приходом графических интерфейсов, и чтобы организовать обмен двоичной информацией по текстовым каналам, было решено кодировать BIN в читаемые символы ASCII. Решать проблемы именно такого характера выпало на долю алгоритма Base64 – рассмотрим его реализацию.

Оглавление:

1. MIME – общие сведения;
2. Принцип ручного кодирования Base64;
3. Алгоритм декодирования;
4. Родственный алгоритм...

Статья ASM. Брутфорс – алгоритмы и оптимизация

  • 10 657
  • 4
Чужая информация всегда привлекала к себе внимание, а когда к ней нет прямого доступа, возникает желание прибрести этот доступ контробандным путём. Если социальная инженерия и прочая игра на чувствах не срабатывает, остаётся идти на таран и использовать метод "грубой силы", что в дословном переводе на инглиш звучит как "Brute-Force". За периметром конкретной задачи брутфорс лишён смысла – каждый случай требует индивидуального подхода. А потому предлагаю ознакомиться с алгоритмами его реализации на программном уровне, чтобы самостоятельно решать проблемы по мере их поступления.

Оглавление:

1. Общие сведения о криптологии;
2. Практика – генератор паролей;
3. Практика – брутфорс паролей;
4. Варианты оптимизации кода;

• выбор по индексу,
• распределение по потокам Thread.
5. Заключение.
-------------------------------------------------

[COLOR=rgb(243, 121...

Статья Диски GPT и MBR – разбор полётов

  • 13 194
  • 2
Под капотом..

1. Разметка CHS и LBA;
2. Формат таблицы разделов MBR;
3. Формат таблицы разделов GPT;
4. Практика – сбор и вывод информации;
5. Заключение.
-----------------------------------------------------

1. CHS и LBA – общие сведения

Ещё в 90-х годах прошлого столетия стало очевидно, что исправно служившая столько лет трёхмерная геометрия жёстких дисков CHS (Cylinder, Head, Sector) не удовлетворяет уже современным требованиям и её срочно нужно менять. Так, следующим шагом к совершенству был ввод в прошивку HDD модуля под названием "транслятор адреса", который налету превращал физический номер сектора CHS, в логический LBA (Logical Block Address). Но и это лишь на время отложило неизбежную смерть механизма CHS-to-LBA, поскольку основная проблема была зарыта ещё глубже. Она заключалась в том...

Статья ASM – ода о клавиатуре

  • 6 400
  • 5
Если компьютер не "вещь в себе", в нём должна быть заложена система взаимодействия с пользователем. Во всех активных микро/процессорных устройствах, для ввода информации предусмотрена клавиатура, которая представляет собой вполне самостоятельный мини/компьютер со-своим встроенным процессором. В данной статье рассматривается как внутреннее устройство этого интересного девайса, так и поддержка его на уровне BIOS и операционной системы Win. Кроме того уделяется внимание системной "очереди сообщений" – основного механизма взаимодействия с окнами.

Оглавление:

1. Введение;
2. Устройство клавиатуры

• задачи встроенного контролёра i8049;
• контролёр интерфейса на мат.плате i8242;
3. Системная поддержка;
• стек драйверов клавиатуры;
• очередь сообщений клавиатуры;
4. Практика...

Статья Python - собираем и отправляем данные в Telegram

  • 12 966
  • 6
Введение

Приветствую всех у кого есть время читать данный контент. Совсем недавно, еще в этом месяце меня посетила очень интересная идея. Сколько информации о системе можно собрать используя Python? Многие начнут размышлять и вывод будет достаточно большим, ведь собрать можно многое. Начиная от обычного название системы и заканчивая IP и MAC адресом (кстати как это собрать я тоже покажу). Поэтому, чтобы не оставлять данную идею в "мечтах" я принялся за ее реализацию. Приступим.

Подайте мне код!

Прежде всего любое написание программ начинается с импорта библиотек. Лично я использую для написания данного когда PyCharm. Надеюсь установить данную IDE у вас не составит проблем. Открываем программу, создаем новый файл и пишем:

Python:
import getpass
import os
import socket
import sys
from datetime...

Статья ASM – Брут и шифрование Цезарем

  • 6 140
  • 2
Среди огромного кол-ва алгоритмов шифрования имеется и шифр "Цезаря", который по-сути и открыл эпоху крипта в целом (Рим, 50-ые годы до нашей эры). Не нужно искать в нём скрытый смысл – его там попросту нет, а скрытие текста от посторонних глаз осуществляется обычной заменой одного символа, другим. Такие алго называют ещё "шифр с подстановкой". Ключ представляет собой обычное число, кредитный портфель которого ограничен диапазоном алфавита текущей кодировки текста (для кириллицы это Win-1251, с макс.ключом =32). Например если ключ равен единице, то на место символа "А" подставляется следующий "Б" и т.д. На рисунке ниже представлена общая схема, где в качестве ключа я выбрал значение(4):

Здесь видно, что алгоритм примитивен как амёба и в наше время источает уже запах давно непроветриваемых помещений. Однако в начальных учебных заведениях этот "труп" по-прежнему ворошат, делая ставку именно на простоту его реализации. Нужно отметить...

Статья ASM – техники из старого сундука

  • 7 490
  • 7
Есть поговорка: "Программистами не рождаются – ими умирают". Исходя из этой парадигмы можно сделать вывод, что за долгий свой/программерский путь, у каждого из нас снежным комом накапливаются различные техники и алгоритмы, поделиться с общественностью которыми было-бы не грех. К примеру на этапе моего начинания, мир процессора для меня был так юн, что некоторые вещи не приобрели ещё свои имена и приходилось указывать на них пальцем. Позже, все просветления было решено записывать в блокнот, который постепенно разбух до увесистого романа. Фильтр элементарных заметок сделал своё дело и на данный момент в этом блокноте осталось ~1000 строк, которые я и решил сбросить сюда с краткими комментариями. Надеюсь у топика найдутся свои "евангелисты" и кто-нибудь почерпнёт с него что-то полезное.
-------------------------------------------

1. Логические операции на уровне битов

Загибание пальцев начну с логики и...

Статья SYSENTER – скрытый запуск Native-API

  • 7 621
  • 8
Многоуровневое разграничение прав в системах класса Windows, накладывает свой отпечаток на систему безопасности в целом. Разработчикам логичней было создать один защитный пласт и закрыть его на большой замок, но они раскромсали его на мелкие части, в результате чего появилось множество дыр и обходных путей на разных уровнях. В данной статье рассматривается одна из таких лазеек, а точнее – скрытый запуск ядерных API-функций, что даёт возможность прямо под юзером обходить различные гуарды, мониторы безопасности, API-шпионы, антивирусы и прочие силовые структуры. Не сказать, что тема новая.. просто она незаслуженно забыта, и в силу своей сложности всё реже встречается в защитных механизмах наших дней.

Оглавление:


1. Инструкция SYSENTER – общие сведения.
2. SSDT – System Service Descriptor Table.
3. Разбор таблицы-экспорта библиотеки Ntdll.dll.
...

Статья Программирование HDD/SSD. Часть.1 – устройство

  • 11 744
  • 3
Жёсткие диски это тот раздел программирования, который покрыт мраком и тайной. Дефицит информации на эту тему накладывает свой отпечаток, и даже простое копирование больших объёмов данных может стать нетривиальной задачей. Но если копнуть глубже, оказывается не всё так плохо, и большинство базовых операций на низком уровне доступно не только админу, но и простому смертному юзеру. На практике, мифы о высоком либидо и буйном темпераменте дисков несколько преувеличены, и надеюсь данная статья поможет нам разобраться в этом. Поскольку материал получился обширным, пришлось разделить его на две части – теория и практика.

В этой части:

• Общие сведения
• Интерфейсы ATA/SATA
• Регистры IDE-устройств
• Интерфейсы SCSI/SAS
• Выводы
...