Временная скидка 60% на годовую подписку!

С++

Xakep #299

Под капотом у PassMark. Исследуем популярный бенчмарк и пишем свои тесты

Существуют сотни программ для оценки производительности, но абсолютным лидером среди них можно назвать PassMark — «индустриальный стандарт с 1998 года», как его позиционирует сам разработчик. На сайте программы — огромная база оценок самых разных девайсов. Давай посмотрим, что находится под капотом у легендарной программы для бенчмарков.

Xakep #297

Ты не пройдешь! Изучаем методы предотвращения подгрузки DLL

Злые вирусы так и норовят подгрузить в нашу легитимную программу свои библиотеки! Возможно ли избавиться от чужих модулей? Как предотвратить загрузку библиотек или хотя бы своевременно о ней узнать? Давай разбираться.

Xakep #295

Железный бряк. Используем хардверные брейк-пойнты в пентестерских целях

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

Xakep #295

Веселые хеши. Реализуем технику API Hashing, чтобы обдурить антивирус

В этой статье мы с тобой напишем полноценную пермутирующую реализацию техники API Hashing, что позволит раз и навсегда скрыть импорты от глаз антивируса. Впервые технику API Hashing я увидел в вирусе‑шифровальщике Revil, проблема лишь в том, что хеши от функций были вписаны в код, а это позволяет легко создавать сигнатуры. Давай сделаем так, чтобы все данные генерировались на лету, тогда у антивируса не будет шансов!

Xakep #290
КодингХардкор

Дерем три шкуры. Как дампить тикеты Kerberos на C++

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

Xakep #289

Privileger. Управляем привилегиями в Windows

Привилегии в Windows играют очень важную роль, так как администратор имеет возможность предоставить специальные права пользователям для решения их задач. В этой статье мы познакомимся с инструментом Privileger, который позволяет отыскивать в системе учетные записи с определенными привилегиями и менять привилегии у заданного аккаунта.

Xakep #276

Круче кучи! Разбираем в подробностях проблемы heap allocation

Некоторые уязвимости возникают из-за ошибок с управлением памятью, выделенной на куче. Механизм эксплуатации этих уязвимостей сложнее, чем обычное переполнение на стеке, поэтому не все умеют с ними работать. Даже курс Cracking the perimeter (OSCE) не заходил дальше тривиальной перезаписи SEH. В этой статье я расскажу и на практике покажу механику работы кучи.

Xakep #276

Чит своими руками. Вскрываем компьютерную игру и пишем трейнер на C++

Играть в игры любят все, но это гораздо интереснее, когда у тебя имеется нескончаемый запас патронов и здоровья. Чтобы обзавестись и тем и другим, можно погуглить читы и трейнеры для твоей любимой игры. Но как быть, если их еще не разработали? Написать самому! Обладая навыками реверс-инжиниринга и программирования, сделать это намного проще, чем кажется.

Xakep #276

Фундаментальные основы хакерства. Идентифицируем возвращаемое функцией значение

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

Xakep #236

Тайный WinAPI. Как обфусцировать вызовы WinAPI в своем приложении

Образцы серьезной малвари и вымогателей часто содержат интересные методики заражения, скрытия активности и нестандартные отладочные приемы. В вирусах типа Potato или вымогателях вроде SynAsk используется простая, но мощная техника скрытия вызовов WinAPI. Об этом мы и поговорим, а заодно напишем рабочий пример скрытия WinAPI в приложении.

Xakep #229

Беспощадный буст. Как ускорить многопоточный код на C++

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

Грустная история забытых символов. Как не сойти с ума при работе с кодировками в C++

Говоря о тексте, большинство программистов C++ думают о массивах кодов символов и кодировке, которой эти коды соответствуют. Но, конечно, не думать о кодировке намного проще. Давай посмотрим, как можно не заботиться о кодировке и при этом видеть безошибочное представление текста где угодно: в Китае ли, в США или на острове Мадагаскар.

Антипаттерны программирования на плюсах

С++ — настоящий мужской язык программирования. Программируя на нем, ты легко можешь отстрелить себе ногу, да так, что узнаешь об этом только через добрые полгода. Что же делать? Читать стандарт! И эту статью, кстати, тоже.

25 лет «Хакеру»!

Еженедельный дайджест

Спасибо за подписку! Мы будем присылать важные новости ИБ в еженедельном дайджесте
Ошибка при подписке Случилась ошибка при создании подписки на наш дайджест. Пожалуйста, попробуйте позднее
Важные события и скидка на подписку:
«ХАКЕР» ДОСТУПЕН ТОЛЬКО В ЭЛЕКТРОННОЙ ВЕРСИИ
Оформи подписку — получи:
  • доступ к платным материалам сайта
  • доступ ко всем номерам PDF
4000 р.
на год
920 р.
на месяц

«Хакер» в соцсетях

Материалы для подписчиков