随笔分类 - Linux
摘要:由于Kali2020.1版本更新增加了多用户,所以这里简单记录一下安装过程。 U盘Kali系统 1.准备 装系统:Vmware IOS镜像:https://www.kali.org/downloads/ 推荐下载工具:IDM下载 U盘:我用的32G USB3.0 先格式化 2.安装 通过VM新建一个
阅读全文
摘要:SystemTap 是监控和跟踪运行中的 Linux 内核的操作的动态方法。这句话的关键词是动态,因为 SystemTap 没有使用工具构建一个特殊的内核,而是允许您在运行时动态地安装该工具。它通过一个名为Kprobes 的应用编程接口(API)来实现该目的,本文将探索这个 API。我们首先了解以前
阅读全文
摘要:动态追踪技术 SystemTaphttps://www.ibm.com/developerworks/cn/linux/l-systemtap/index.html kprobe(kprobes, jprobes和kretprobes) Dtrace 火焰图 ProbeVue 系统调试工具 trus
阅读全文
摘要:相关结构 ELF可执行文件由ELF头部,程序头部表和其对应的段,节头部表和其对应的节组成。如果一个可执行文件参与动态链接,它的程序头部表将包含类型为PT_DYNAMIC的段,它包含.dynamic节。结构如下: 其中Tag对应着每个节。比如JMPREL对应着.rel.plt节中包含目标文件的所有信息
阅读全文
摘要:.dynmic .rel.plt .dynsym 1.控制eip为PLT[0]的地址,只需传递一个index_arg参数 2.控制index_arg的大小,使reloc的位置落在可控地址内3.伪造reloc的内容,使sym落在可控地址内 4.伪造sym的内容,使name落在可控地址内 5.伪造nam
阅读全文
摘要:PLT&GOT 程序运行前 编译完成后 GOT[0]=.dynamic段地址GOT[1]=link_map数据结构地址GOT[2]=_dl_runtime_resolve() 注:GOT[1],GOT[2]在程序装载是被动态链接器装载。 函数第一次调用 之后调用函数
阅读全文
摘要:4种ELF文件类型 ELF文件构成 两种视图 section和segment的区别: section称为节,是指在汇编源码中经由关键字section或segment修饰、逻辑划分的指令或数据区域。 segment称为段,是根据目标文件中属性相同的多个section合并后的section集合,这个集合
阅读全文
摘要:一、LD_PRELOAD是什么 LD_PRELOAD是Linux系统的一个环境变量,它可以影响程序的运行时的链接(Runtime linker),它允许你定义在程序运行前优先加载的动态链接库。这个功能主要就是用来有选择性的载入不同动态链接库中的相同函数。通过这个环境变量,我们可以在主程序和其动态链接
阅读全文
摘要:PEB TEB FS:0指向线程环境块TEB;FS:[0]指向当前线程的结构化异常处理结构(SEH); FS:0指向TEB的理解应该是:TEB结构存放于FS段从0开始的位置,整个TEB结构数据在FS段中; FS:[0]指向当前线程的结构化异常处理结构的理解应该是:在FS:0所指向的TEB结构中,第一
阅读全文
摘要:1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR213) SIGPIPE 14) SIGAL
阅读全文

浙公网安备 33010602011771号