博客
关于我
checksec未完待续~
阅读量:351 次
发布时间:2019-03-04

本文共 822 字,大约阅读时间需要 2 分钟。

checksec是一个用于检查可执行文件属性的脚本工具,专注于安全相关的文件属性检测,适合用于学习shell脚本和安全技术。

checksec主要用于检查可执行文件的安全属性,包括但不限于PIE、RELRO、Pax、Canaries、ASLR和Fortify Source等技术。这些属性通常与文件的保护模式和安全特性相关,帮助开发者评估目标文件的安全性。

关键术语解释

  • PIE (Position Independnet Code): 位置无关代码是一种技术,允许可执行文件在任意位置运行。PIE通过在文件中添加一个函数入口点,使其无需依赖特定的内存位置。

  • RELRO (RELocation Read-Only): RELRO是一种 mitigation技术,用于将数据段设置为只读,以防止某些类型的攻击对内存布局造成影响。

  • Pax (Stack Canary): Pax是一种栈保护技术,通过在栈顶部添加一个保护区域(canary)来防止栈溢出攻击。

  • ASLR (Address Space Layout Randomization): ASLR是一种安全技术,通过随机化程序的虚拟内存布局,防止攻击者利用已知的内存布局信息进行攻击。

使用方法

checksec支持通过命令行参数进行文件检查,例如:

checksec --file /usr/sbin/sshd

源码解读

checksec的源码通常包含脚本解析器和安全检测逻辑,适合在Ubuntu等系统上进行测试和分析。脚本中常用自定义函数assertShellOutputEquals()来验证命令输出,确保测试结果准确。

栈溢出防御

现代Linux系统提供了多种防止栈溢出攻击的技术,包括Pax、ASLR和RELRO等。这些技术通过改变内存布局和保护机制,有效提升系统安全性。

checksec作为一个简化工具,能够帮助开发者快速检测系统中可执行文件的安全属性,指导安全性优化工作。

转载地址:http://jmjr.baihongyu.com/

你可能感兴趣的文章
Objective-C实现DPLL(davisb putnamb logemannb loveland)算法(附完整源码)
查看>>
Objective-C实现DWT离散小波变换(附完整源码)
查看>>
Objective-C实现Edmonds-Karp算法(附完整源码)
查看>>
Objective-C实现EEMD算法(附完整源码)
查看>>
Objective-C实现elgamal 密钥生成器算法(附完整源码)
查看>>
Objective-C实现EM算法(附完整源码)
查看>>
Objective-C实现EM算法(附完整源码)
查看>>
Objective-C实现entropy熵算法(附完整源码)
查看>>
Objective-C实现euclidean distance欧式距离算法(附完整源码)
查看>>
Objective-C实现Euclidean GCD欧几里得最大公约数算法(附完整源码)
查看>>
Objective-C实现euclideanDistance欧氏距离算法(附完整源码)
查看>>
Objective-C实现euler method欧拉法算法(附完整源码)
查看>>
Objective-C实现euler modified变形欧拉法算法(附完整源码)
查看>>
Objective-C实现eulerianPath欧拉路径算法(附完整源码)
查看>>
Objective-C实现Eulers TotientFunction欧拉函数算法(附完整源码)
查看>>
Objective-C实现eulers totient欧拉方程算法(附完整源码)
查看>>
Objective-C实现EulersTotient欧拉方程算法(附完整源码)
查看>>
Objective-C实现eval函数功能(附完整源码)
查看>>
Objective-C实现even_tree偶数树算法(附完整源码)
查看>>
Objective-C实现Exceeding words超词(差距是ascii码的距离) 算法(附完整源码)
查看>>