![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
漏洞
hhhnoone
nobody
展开
-
Race Condition漏洞
Race ConditionRace Condition(竞争条件)是一种情形,在该情形下系统或者程序的输出受其他不可控事件的顺序或事件的影响。软件中的Race Condition通常出现在两个并发线程访问同一个共享资源。因而存在Race Condition漏洞的特权程序,通过对不可控事件施加影响,攻击者能够影响特权程序的输出。常见的Race Condition漏洞有一下两类Time-...原创 2020-01-17 00:15:37 · 1775 阅读 · 0 评论 -
关于竞争条件的对策
原子操作TOCTTOU竞争条件是由于检查操作和使用操作之间的间隔(也称窗口期)而导致的,原子操作旨在消除检查和使用操作之间的间隔,将检查和使用操作原子化,该对策需要操作系统级的支持。重复检查和使用竞争条件漏洞能否成功被利用,取决于攻击者能否赢得检查与使用之间的窗口,即能否在检查与使用间隔期间改变程序的输出,重复检查和使用方法旨在使攻击者更加难于赢得窗口,参考如下代码:#...原创 2020-01-16 19:38:58 · 501 阅读 · 1 评论 -
如何写一个shellcode
什么样的shellcode可以起到最大的破坏,那就是能够满足攻击者各种各样需要的shellcode,怎么才能满足各种各样的需要呢?调用shell。如何写一个shellcode,以需要execve()系统调用的shellcode为例:%eax:eax寄存器需要存储11,这是execve()的系统调用号(system call number)%ebx:存储控制字符串“/bin/sh”的地址(e...原创 2020-01-16 16:16:38 · 519 阅读 · 0 评论 -
关于缓冲区溢出的对策
从编译器的角度出发以下两种方法均是编译器采取的关于缓冲区溢出的对策Stackshield主要思想是在函数调用之前,将return address的副本保存在一个安全的地方,函数返回时将返回地址与预先保存的返回地址比较,以判断缓冲区溢出是否发生。StackGuard在返回地址和缓冲区之间添加一段guard区,该guard区中可以由编译器存放一些不可预测的值,利用该guard区的值是否被篡改...原创 2020-01-04 19:46:11 · 3501 阅读 · 0 评论 -
Set-UID与环境变量
特权程序(privileged program)任何具有附加特权的程序都可以被认为是特权程序。特权程序有两种形式:daemon 和 Set-UIDdaemon:作为后台处理的程序,要想作为一个privileged program,需要具有特权的UID,例如root。在Windows系统中,称为services(服务),而不叫作daemon,services和daemon都是作为后台程序运行的...原创 2020-01-03 15:14:19 · 1439 阅读 · 0 评论 -
SeedLab-ReturnToLibc
Lab Overview这个实验的学习目标是给学生体验有趣的缓冲区溢出攻击的变体,这种攻击攻击能够绕过实现在大多数linux操作系统上的保护机制。一种常见的利用BufferOverflow漏洞的方法是利用一段shellcode溢出buffer,然后使漏洞程序跳转到保存在栈上的shellcode,并执行shellcode,参考BufferOverflow漏洞。为了防止这种类型的攻击,一些操作系统允...原创 2019-12-31 22:34:56 · 982 阅读 · 0 评论 -
SeedLab-BufferOverflow漏洞
实验概要实验地址: https://seedsecuritylabs.org/Labs_16.04/Software/Buffer_Overflow/ 该实验室的学习目标是让学生通过将他们从课堂上学到的有关漏洞的知识付诸实践,获得有关缓冲区溢出漏洞的第一手经验。缓冲区溢出被定义为程序试图在预分配的固定长度缓冲区的...原创 2019-12-31 00:12:08 · 3839 阅读 · 0 评论