Новые публикации

Заголовок
Оценка
Ответов
Последнее сообщение

    Выделение локальной памяти AllocMem, ReallocMem

    18 янв 2024

    Кто хочет излечить нашу современность программирования от ее внутренних болезней, от всего ее гнилья, тот прежде всего должен иметь смелость взглянуть правде в лицо и найти причины болезни. (с) #include <windows.h> #ifdef _DEBUG LPVOID AllocMem( DWORD cb ) { LPDWORD pMem; DWORD cbNew; cbNew = cb + 2 * sizeof( DWORD ); if( cbNew & 3 ) cbNew += sizeof( DWORD ) - ( cbNew & 3 ); pMem = (LPDWORD)LocalAlloc (LPTR | LMEM_ZEROINIT, cbNew ); if( !pMem )...
    Читать далее
    Лайков +1 Комментариев2 Просмотров1.037

    Некрономикон GPU. Глава вторая

    21 фев 2023

    Королевство кошмаров Память.. Ее всегда мало. И мы всегда будем чувствовать нехватку оперативной памяти, даже если она увеличится в 10 раз относительно сегодняшних технологических достижений. К примеру, имея на борту видеокарты один гигабайт памяти, мы думали - ого дак это очень много - в один гигабайт влезет за одну загрузку все текстуры игры “Quake 2“ и еще останется куча места. Но сейчас - три гигабайта никого не удивят. Текстуры стали большими, сложные процедуры генерации полигонов,...
    Читать далее
    Лайков +10 Комментариев1 Просмотров1.749

    Преобразование кода и конечные автоматы

    19 янв 2023

    Существует такой интересный объект, как конечный автомат (finite automaton). Этот автомат обладает внутренними состояниями (это просто такие переменные), при изменении которых происходят определенные действия. Таким образом, есть набор действий, каждое из которых определяется текущим состоянием автомата, и/или переходом из одного состояния в другое, и матрица, определяющяя переходы между состояниями. Рассмотрим простую задачку: есть строка вида "1,3-7,9-100,105" которую...
    Читать далее
    Лайков +2 Комментариев2 Просмотров2.047

    Cуть программирования на разных языках, на разном уровне абстракции

    2 янв 2023

    Представьте, что Вы в гостинице, допустим, в Индии. Вечер. Вы собираетесь включить в номере свет и ищете возле двери выключатель, но обнаруживаете два оголённых провода. Вы, наверное, догадаетесь их осторожно соединить и остаток вечера проведёте за чтением любимой книги. Если связать эту ситуацию с программированием, то можно считать, что Вы программировали на самом низком уровне - поменяли состояние «триггера» вручную. Теперь представьте, что Вы в другой гостинице и вновь хотите посвятить...
    Читать далее
    Лайков +2 Комментариев0 Просмотров599

    Шестнадцатибитный Ассемблер. Печать строки (без операционной системы) [перевод]

    30 дек 2022

    Ассемблер несомненно - фантастический язык программирования, который мы можем использовать для работы (в оригинале контроля компонентов) с различными электронными компонентами, это язык близкий к машинному языку. В начале компьютерной эры многие разработчики использовали Ассемблер для компиляции кода. Затем записывали на дискеты. Так, например, компания Microsoft выпустила систему MSDOS. Из этой статьи вы узнаете, как напечатать строку (вывод символов без операционной системы. прим....
    Читать далее
    Лайков +3 Комментариев2 Просмотров2.566

    Кибербезопастность Часть 2

    12 ноя 2022

    С этого следовало бы начинать, сорри Cogitationis poenam nemo patitu но это не так. Список инструментов хакера/инженера по ИБ – обязательно к самостоятельному изучению: Чем пользуются профессионалы Перед тем как использовать нижеперечисленное ПО, нужно отдавать себе отчет, что оно было создано отнюдь не для вредоносного назначения, а только в приватных целях для изучения и обучения. Необходимо перед началом обучения обязательно изучить законодательную базу РФ. Статья 272. Неправомерный...
    Читать далее
    Лайков 0 Комментариев3 Просмотров2.040

    Кибербезопасность, часть 1

    12 ноя 2022

    Как то ехал я перед рождеством... Ю. Хой.. ц.нб. Попросили написать кратко и ёмко... Выложу тут, может школоло пригодится. Специалист по информационной безопасности (кибербезопасности). Специализация: Предотвращение, локализация и определение источников вторжений. Поиск уязвимостей в системах защиты ОС и стороннего ПО и их исправление. Обезвреживание обнаруженного вредоносного ПО, если таковое произошло и его анализ с целью обнаружения механизмов его...
    Читать далее
    Лайков 0 Комментариев3 Просмотров2.073

    Вывод через wsprintf на assemblere

    14 сен 2022

    Многие используют функцию wsprintf(), но не все знают, что в справке msdn есть 2 ошибки, которые могут в один прекрасный день убить ваш софт. ; wsprintf( // Фоpматиpует и записывает в буфеp последовательность символов ;DWORD lpOut, // Буфеp для пpиема отфоpматиpованных символов ;DWORD lpFmt, // Стpока упpавления фоpматом ; ... ); // Массив аpгументов для стpоки упpавления фоpматом ;============================================================================== ; В случае успешного завеpшения...
    Читать далее
    Лайков 0 Комментариев5 Просмотров3.238

    Исследование PPPWorld 6.3.0.2: пишем KeyGen.

    25 июн 2022

    Данный материал публикуется исключительно в ознакомительных целях. Автор не несёт никакой ответственности за его применение в корыстных целях. ЦЕЛЬ : PPPWorld 6.3.0.2 Инструменты : OllyDbg + PEExplorer + MASM32 Я думаю, многие из вас знают о довольно популярном способе проведения досуга, таком как решение японских кроссвордов. Зачастую, печатные версии этих головоломок можно видеть на полках газетных киосков, магазинов. Помимо печатных изданий сегодня существует огромное множество...
    Читать далее
    Лайков +2 Комментариев1 Просмотров2.601

    Hook engine. Может кому-то пригодится

    11 апр 2022

    Hook engine Движок для перехвата функций. Подойдет как для ring3 перехватов, так и для ring0. Проблемы могут возникнуть при копировании call в тело функции, но я думаю этого не будет. Функции аллока и освобождения памяти намеренно убраны, т.к. для разных ring свои функции аллока памяти. Работает так: дизассемблирует начальный код функции, и копирует в буфер столько кода, чтобы заместо него поместился call. После копирования, начало функции заменяется на call <> + nop для добивки остатков....
    Читать далее
    Лайков +3 Комментариев2 Просмотров2.443

    THE IDA PRO BOOK 2 ИЗДАНИЕ - Неофициальное руководство по самому популярному дизассемблеру в мире

    8 ноя 2020

    Вам может быть интересно, чего ожидать от книги, посвященной IDA Pro. Хотя эта книга явно ориентирована на IDA, она не предназначена для того, чтобы воспринимать её как Руководство пользователя IDA Pro. Вместо этого мы намерены использовать IDA в качестве вспомогательного инструмента для обсуждения методов реверс инжиниринга, которые вы найдете полезными при анализе широкого спектра программного обеспечения, от уязвимых приложений до вредоносных программ. При необходимости мы предоставим...
    Читать далее
    Лайков +5 Комментариев12 Просмотров18.132

    Антиинжект ring3

    11 авг 2020

    Cogitations poenam nemo patitur (лат.) Никто не несет наказания за мысли ©2009 Активная антиотладка и антиинжект Проекты в конце статьи – под Microsoft Visual Studio. Разговор далее пойдет только о Ring3. Недавно (2014 год) работая над написанием плагина под Sysinternals Process Explorer, случайно столкнулся с функцией RtlQueryProcessDebugInformation из ntdll.dll, которая оказывается использует удаленные потоки для получения информации о стороннем процессе, закидывая свой шелл код в...
    Читать далее
    Лайков +1 Комментариев2 Просмотров3.489

    VX [Начало для начинающих]

    6 авг 2020

    Cogitations poenam nemo patitur (лат.) Никто не несет наказания за мысли Да будет использован синтаксис ассемблера и чистого Си! (c) MD5: d0558134ba9db6d134e639d0e1ebb008 VX начала часть 1 Советы начинающим хакерам или краткая автобиография MD5: d0558134ba9db6d134e639d0e1ebb008 10 заповедей начинающего кулхакера (chacker ;) ) Не забывайте, что Хакер и Крекер это не одно и тоже. Хакер – человек, знакомый с ньюансами сетевых взаимодействий систем на низком уровне, т.е. на...
    Читать далее
    Лайков +1 Комментариев4 Просмотров3.199

    АV чекеры [для начинающих]

    5 авг 2020

    Cogitations poenam nemo patitur (лат.) Никто не несет наказания за мысли Gott spielt keine Würfel (c) Einstein! MD5: d0558134ba9db6d134e639d0e1ebb008 Чекеры и их место в жизни Малварьщика (краткий обзор "на коленке") Каждый уважающий себя малварьщик и крипотвальщик знаком с таким словом как checker . если вас заинтересовала разработка Малварей, вы должны и уметь где-то их тестировать, а чекеры предоставят вам эту возможость. 1.scanmybin.net - этот сервис хорош тем, что...
    Читать далее
    Лайков +1 Комментариев1 Просмотров4.350

    Начинаем становится сискодером [цикл для новичков]

    2 авг 2020

    Cogitations poenam nemo patitur (лат.) Никто не несет наказания за мысли Да будет использован синтаксис ассемблера и чистого Си! (c) MD5: d0558134ba9db6d134e639d0e1ebb008 Начинаем становится сискодером Или по простому - системным программистом Приложение 1 к "VX начала " (c) MD5: d0558134ba9db6d134e639d0e1ebb008 часть 1 Итак мы уже считаем себя сискодером, уяснили что между ядром и режимом пользователя Рассматривать нативные функции можно здесь – отличие от Win API огромно, но несет для...
    Читать далее
    Лайков 0 Комментариев12 Просмотров3.449

    Готовим Windows 10

    26 июн 2020

    Просто гайд о том, как правильно ставить, активировать и настраивать Windows 10 и Office. На создание вдохновили труды rk2019 над сборками Windows XP. Тема этого гайда не совсем по профилю форума, но для кого-то может оказаться полезной. 1. Скачиваем образ. Никаких варезников, торрентов и модифицированных сборок, качаем лицензионный *.iso с официального сайта. https://www.microsoft.com/ru-ru/software-download/windows10 Нам нужен *.iso, а сайт предлагает средство обновления. Заходим в...
    Читать далее
    Лайков +8 Комментариев5 Просмотров7.177

    Виртуализация для самых маленьких #3: готовим структуры, заполняем EPT

    21 июн 2020

    В прошлой части мы получили теоретическую базу по принципам настройки гипервизора и EPT. Применим их на практике. В первой части мы написали шаблон драйвера и заготовку для виртуализации всех процессоров - функцию VirtualizeAllProcessors. Код виртуализации будет необходимо выполнить на всех процессорах и это легко сделать через генерацию межпроцессорного прерывания функцией KeIpiGenericCall. Каждый логический процессор выполнит код, переводящий его в режим виртуализации, и продолжит свою...
    Читать далее
    Лайков +7 Комментариев21 Просмотров5.488

    Мета-программирование Nim и обфускация

    20 июн 2020

    Здравствуйте, друзья, мы с вами продолжаем исследовать возможности мета-программирования различных высокоуровневых языков в одной единственной прикладной сфере - обфускации. На этот раз мы рассмотрим язык программирования Nim - модный, молодежный, немного питонный, немного паскальный язык, который позиционируется как альтернатива C++. Насколько дизайн и реализация языка Nim удачны - вопрос спорный, но нас как бы это не особо то и интересует. Нас интересуют только весьма богатые возможности...
    Читать далее
    Лайков +4 Комментариев4 Просмотров5.831

    Виртуализация для самых маленьких #2: управляющие структуры, EPT, MTRR

    18 июн 2020

    Продолжаем писать изучать гипервизор. В прошлой части мы написали шаблон драйвера и заготовку функции для виртуализации всех логических процессоров. Прежде всего, следует напомнить, что под логическим процессором понимается или одно физическое ядро процессора (если процессор не поддерживает SMT/Hyper-Threading), или один логический поток в процессорах с поддержкой SMT/Hyper-Threading. Иными словами, если у процессора 4 ядра и он поддерживает Hyper-Threading (два потока на одно физическое...
    Читать далее
    Лайков +7 Комментариев5 Просмотров5.159

    Виртуализация для самых маленьких #1: гипервизор - что, зачем и почему

    15 июн 2020

    [ATTACH] Развитие технологий аппаратной виртуализации (Intel VT-x и AMD-V) открывает широкие возможности по контролю выполнения кода на самом низком уровне. Привычные всем гипервизоры (Hyper-V, KVM, VMware или VirtualBox) позволяют запускать операционные системы в изолированном окружении: это становится возможным, благодаря способности процессоров работать в специальном режиме, в котором они контролируют доступ к ресурсам и обрабатывают выполнение заданных инструкций и событий. При...
    Читать далее
    Лайков +15 Комментариев18 Просмотров8.228