
checksec未完待续~
发布日期:2021-05-07 18:06:18
浏览次数:6
分类:原创文章
本文共 1186 字,大约阅读时间需要 3 分钟。
checksec是一个脚本软件,也就是用脚本写的一个文件,不到2000行,可用来学习shell。
源码参见
下载方法之一为
wget
checksec用来干什么?
用来检查可执行文件属性,例如PIE, RELRO, PaX, Canaries, ASLR, Fortify Source
PIE是什么意思?
(PIC:Position Independnet Code位置无关代码)
position independent executable
RELRO是什么意思?
Built with RELRO
RELRO stands for RELocation Read-Only, it is a mitigation technique to harden data sections of an ELF/process.
Pax是什么意思?
Stack Canary
ASLR是什么意思?
checksec使用方法
checksec –file /usr/sbin/sshd
源码解读:
ubuntu测试important!!!!
self.assertShellExitEquals()太重要了
- def assertShellOutputEquals(self, text, args, stdin=None,
stdout=subprocess.PIPE, stderr=subprocess.STDOUT, msg=”“, invert=False,
expected=None): - ”’Test a shell command matches a specific output”’
- rc, report, out = self._testlib_shell_cmd(args, stdin=stdin,
stdout=stdout, stderr=stderr) - result = ‘Got exit code %d. Looking for exact text “%s” (%s)\n’ % (rc,
text, ” “.join(args)) - if not invert:
- self.assertEquals(text, out, msg + result + report)
- else:
- self.assertNotEquals(text, out, msg + result + report)
- if expected != None:
- result = ‘Got exit code %d. Expected %d (%s)\n’ % (rc, expected, ”
“.join(args)) - self.assertEquals(rc, expected, msg + result + report)
现代Linux操作系统的栈溢出(上)
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2025年04月11日 17时40分18秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
剑指offer JZ15 反转链表
2019-03-04
剑指offer JZ21 栈的压入弹出序列
2019-03-04
剑指offer JZ31 整数中1出现的次数
2019-03-04
实现基于scrapy框架的天气预报爬虫hengYangSpaider @572311文
2019-03-04
maven打包指定名称并去除jar-with-dependencies后缀
2019-03-04
Netty4服务端入门代码示例
2019-03-04
操作系统前传第六课--开发中的辅助工具
2019-03-04
Linux系统编程44 信号 - 信号的响应过程分析!!!
2019-03-04
VL53L0x TOF激光测距的 stm32 HAL库驱动代码
2019-03-04
怎么玩LOG4J
2019-03-04
Oracle创建用户,分配表空间
2019-03-04
自定义标签(JSP2.0)简单标签
2019-03-04
MyBatis自定义类型转换器
2019-03-04
机器学习(湖北师范大学教程)-极大似然估计算法
2019-03-04
【C# 重构】—参数化查询, 需要参数,但未提供该参数
2019-03-04
决策树(二)—— ID3和C4.5
2019-03-04
MySQL~教你满分回答什么是数据库索引? 索引的数据结构是什么? 什么是事务?
2019-03-04
操作系统~进程的状态、转换、控制
2019-03-04
操作系统~线程概念以及多线程模型
2019-03-04
数据结构~缓存淘汰算法--LRU算法(Java的俩种实现方式,时间复杂度均为O(1))
2019-03-04