提交 1e950c98 编写于 作者: W wizardforcel

18.1

上级 4066164e
......@@ -62,3 +62,28 @@ thisis%00mystring
> 查看 [OWASP 缓冲区溢出](https://www.owasp.org/index.php/Buffer_Overflows),[OWASP 为缓冲区覆盖和溢出复查代码](https://www.owasp.org/index.php/Reviewing_Code_for_Buffer_Overruns_and_Overflows),[OWASP 检测缓冲区溢出](https://www.owasp.org/index.php/Testing_for_Buffer_Overflow),[OWASP 检测堆溢出](https://www.owasp.org/index.php/Testing_for_Heap_Overflow),[OWASP 检测栈溢出](https://www.owasp.org/index.php/Testing_for_Stack_Overflow),[OWASP 嵌入空字符](https://www.owasp.org/index.php/Embedding_Null_Code)。
## 示例
### 1\. PHP`ftp_genlist()`
难度:高
URL:无
报告链接:`https://bugs.php.net/bug.php?id=69545`
报告日期:2015.5.12
奖金:$500
描述:
PHP 编程语言使用 C 语言写成,C 语言自己管理内存。像上面描述的那样,缓冲区溢出允许恶意用户写入应该为不可访问的内存,并可能执行远程代码。
这里,FTP 扩展 的`ftp_genlist()`函数允许溢出,或者发送多于 ~4293MB 的数据,它们会被写入到临时文件中。
这使得分配的缓冲区太小,而不能存放写入临时文件的数据,在将文件内容加载回内存时,这会造成堆溢出。
> 重要结论
> 缓冲区溢出是非常古老,知名的漏洞,但是在处理自己管理内存的应用时,还是很普遍的,特别是 C 和 C++。如果你发现,你正在处理基于 C 语言(PHP 用它编写)的 Web 应用,缓冲区溢出是一个明显的可能性。但是,如果你刚起步,可能你需要花费一些时间,来寻找和漏洞相关的简单注入,在更有经验时,再返回到缓冲区溢出。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册