1.01M
Категория: ПрограммированиеПрограммирование

Make

1.

2.

MAKE

3.

Makefile

4.

Полезные ссылки
• https://makefiletutorial.com
• https://www.gnu.org/software/make/manual/html_node/
• https://www.gnu.org/software/make/manual/html_node/AutomaticVariables.html (про $@<% ...)

5.

Include guard

6.

ASLR
• (англ. address space layout randomization — «рандомизация
размещения адресного пространства») — технология,
применяемая в операционных системах, при использовании
которой случайным образом изменяется расположение в
адресном пространстве процесса важных структур данных, а
именно образов исполняемого файла, подгружаемых библиотек,
кучи и стека.

7.

GDB, OBJDUMP
GDB:
• Опция –g для сохранения отладочной информации в исполняемом файле
• Запуск -- gdb ./exename + (gdb) r {args}
• Брейкпоинт – (gdb) b fun_name/addr
• Синтаксис Intel – (gdb) set disassembly-flavor intel
• Смена режима – (gdb) layout asm
• Просмотр регистров – (gdb) info regs
• Просмотр памяти по адресу в регистре – (gdb) x/N $esp - M (N и M некоторые числа)
• Просмотр памяти по адресу – (gdb) x/N addr
• Выход – (gdb) q
• Для всего остального есть документация ;)
Objdump: примерно все что вам нужно на текущий момент – objdump -M intel -d exename

8.

Exploit
• https://ir0nstone.gitbook.io/notes/types/stack/canaries
• https://0x434b.dev/an-introduction-to-data-stack-canaries-in-linux/
(здесь показан более сложный способ обхода канарейки)
• https://habr.com/ru/articles/431690/ (простое crackme от каспера)
•…
English     Русский Правила