Тег

C#

19 материалов · RSS

Ultra App Kit. Пишем программы на новом кросс-платформенном фреймворке

В этой статье посмотрим и испытаем на реальных задачах библиотеку Ultra App Kit. Это современный кросс‑платформенный фреймворк для C++, который позволяет писать оконные приложения и широко применяет последние стандарты C++14 и С++17. С ним удобно использовать интеллектуальные указатели…

Замена для WinAPI. Пишем раннер для шелл-кода на чистом .NET

Зачастую атакующие используют стандартные функции WinAPI для исполнения шелл‑кода. Все эти методы давным‑давно известны любому защитному средству. В статье мы отойдем от проторенного пути и будем использовать иную парадигму — полный отказ от использования WinAPI.

WinAPI днем и ночью. Ищем способы обращения к нативному коду из C#

Одним из немногих минусов C# считается некоторая сложность при вызове методов WinAPI. Многие возможности уже перекочевали в сборки, но до сих пор приходится часто сталкиваться с задачей вызова функций Win32 напрямую. В таком случае используются PInvoke, DInvoke…

Вызывайте санитайзер! Фаззим исполняемые файлы при помощи AFL++ с санитайзерами

Фаззинг, как ты, наверное, знаешь, — это техника, которая позволяет автоматизировать поиск уязвимостей в софте. Бывает фаззинг методом «черного ящика», когда у нас нет исходников программы, а бывает основанный на покрытии — то есть применяемый к исходникам. В этой статье…

Чит своими руками. Смотрим сквозь стены и делаем автоприцеливание для 3D-шутера

Сегодня мы с тобой напишем чит для сетевого шутера. Мы реализуем хаки типа extrasensory perception (ESP) и aimbot. ESP отображает информацию об игроках над их головами. Здесь может быть здоровье…

ВзломХардкор#281

Картошка-0. Повышаем привилегии в AD при помощи RemotePotato0

В этой статье мы поговорим о разных вариациях кросс-протокольной атаки NTLM Relay с использованием эксплоита RemotePotato0, а также на этом примере обсудим, как можно спрятать сигнатуру исполняемого файла от статического…

PVS-Studio. Тестируем статический анализатор кода на реальном проекте

В этой статье я покажу тебе, как использовать статический анализатор кода для отлова багов в программе. Использовать мы будем PVS-Studio, и на живом проекте посмотрим, на какие ошибки он пожалуется,…

Игривый Xamarin. Изучаем и взламываем мобильное приложение на С#

Программировать для Android можно не только на Java или Kotlin. Разработчики на С# имеют возможность создавать мобильные приложения с помощью платформы Xamarin. Сегодня мы поговорим о том, как исследовать такие…

Это читерство! Изучаем принципы борьбы с читами и пишем простую защиту

Хакеры разрабатывают читы, геймеры их покупают, компании нанимают инженеров, чтобы разрабатывать новые способы защиты. Хакеры снова находят лазейку, и круг замыкается. В этой статье мы посмотрим, как работают (и работают…

Это читерство! Учимся взламывать игры и писать читы на простом примере

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

Кейлоггер по-домашнему. Пишем на C# кейлоггер, который не палится антивирусами

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

Магия C++. Как выжить без динамической идентификации типов и не сойти с ума

В C++ существует такое понятие, как динамическая идентификация типа данных (RTTI). Это механизм, который позволяет определить тип переменной или объекта на этапе выполнения программы. Чтобы уменьшить исполняемый файл, во многих…

Протокол своими руками. Создаем с нуля TCP-протокол и пишем сервер на C#

Ты в жизни не раз сталкивался с разными протоколами — одни использовал, другие, возможно, реверсил. Одни были легко читаемы, в других без hex-редактора не разобраться. В этой статье я покажу,…

В Microsoft придумали вариант языка Си, на котором труднее писать уязвимые программы

Исследовательский центр Microsoft Research открыл исходниики проекта Checked C — расширения языка программирования Си, которое упрощает разработку программ без уязвимостей, связанных с переполнением буфера, выходом за границы массива, некорректным приведением…

Отчет с Microsoft DevCon 2015

В преддверии выхода Windows 10 сложно переоценить значение разработческой конференции DevCon, которую проводит компания Microsoft. Каждый разработчик жаждет знать, чего ждать от «Десятки», и что у неё будет «под капотом».…