mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-21 20:23:18 +00:00
.. | ||
aslr | ||
pie | ||
stack-canaries | ||
cet-and-shadow-stack.md | ||
libc-protections.md | ||
memory-tagging-extension-mte.md | ||
no-exec-nx.md | ||
README.md | ||
relro.md |
常见二进制利用保护和绕过方式
{% hint style="success" %}
学习并练习 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE)
学习并练习 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)
支持 HackTricks
- 检查订阅计划!
- 加入 💬 Discord 群组 或 电报群组 或 关注我们的 Twitter 🐦 @hacktricks_live.
- 通过向 HackTricks 和 HackTricks Cloud github 仓库提交 PR 来分享黑客技巧。
启用核心文件
核心文件是操作系统在进程崩溃时生成的一种文件类型。这些文件在进程终止时捕获了崩溃进程的内存图像,包括进程的内存、寄存器和程序计数器状态等细节。这个快照对于调试和理解崩溃原因非常有价值。
启用核心转储生成
默认情况下,许多系统将核心文件的大小限制为 0(即不生成核心文件)以节省磁盘空间。要启用核心文件的生成,可以使用 ulimit
命令(在 bash 或类似的 shell 中)或配置系统范围的设置。
- 使用 ulimit:命令
ulimit -c unlimited
允许当前 shell 会话创建无限大小的核心文件。这对于调试会话很有用,但在重新启动或新会话中不会持久保留。
ulimit -c unlimited
- 持久配置:为了更持久的解决方案,您可以编辑
/etc/security/limits.conf
文件,添加类似* soft core unlimited
的一行,允许所有用户在不必在其会话中手动设置 ulimit 的情况下生成无限大小的核心文件。
* soft core unlimited
使用 GDB 分析核心文件
要分析核心文件,您可以使用调试工具如 GDB(GNU 调试器)。假设您有一个生成了核心转储的可执行文件,核心文件名为 core_file
,您可以开始分析:
gdb /path/to/executable /path/to/core_file
这个命令将可执行文件和核心文件加载到GDB中,允许您在崩溃时检查程序的状态。您可以使用GDB命令来探索堆栈,检查变量,并了解崩溃的原因。
{% hint style="success" %}
学习并练习AWS Hacking:HackTricks 培训 AWS 红队专家 (ARTE)
学习并练习GCP Hacking: HackTricks 培训 GCP 红队专家 (GRTE)
支持 HackTricks
- 检查订阅计划!
- 加入 💬 Discord 群组 或 电报群组 或 关注我们的 Twitter 🐦 @hacktricks_live.
- 通过向HackTricks和HackTricks Cloud github 仓库提交 PR 来分享黑客技巧。