DVWA学习笔记
2016-03-22 09:46
155 查看
一开始有点乱,后期会整理哒
DVWA的安装
DVWA的基本漏洞——SQL
乌云上最常见的脚本漏洞莫过于SQL注入和XSS。
脚本安全的本质就是脚本接受了不安全的变量输入,又没得到有效的过滤,最后进入一些对敏感的函数就会对安全造成威胁。
最基本的SQL漏洞:
没有任何检查,自然就可以控制id了,如果我们的输入是“' union select ....”,那么就相当于多执行了一个语句。当然,用什么语句也是很讲究的。
再来看medium等级的
虽然$id经过了mysql_real_escape_string转义了’,可是因为后面的SQL语句$id没有单引号保护,会被系统认为是数值型,导致数值型注入。。
这个时候构造,连分号都不要了。。“ 1 union select ...”
DVWA的基本漏洞——XSS
脚本问题,终极目的是窃取cookie什么的。。
DVWA下的;low等级下,几乎没有什么防护,直接插入语句就可以了,像
<script>alert("五更钟")<script>
<script>alert(document.cookie)<script>
medium.php中,虽然对$message进行了尖括号转义,而且对
DVWA的安装
DVWA的基本漏洞——SQL
乌云上最常见的脚本漏洞莫过于SQL注入和XSS。
脚本安全的本质就是脚本接受了不安全的变量输入,又没得到有效的过滤,最后进入一些对敏感的函数就会对安全造成威胁。
最基本的SQL漏洞:
if(isset($_GET['Submit'])){ // Retrieve data $id = $_GET['id']; $getid = "SELECT first_name, last_name FROM users WHERE user_id = '$id'";//low.php $result = mysql_query($getid) or die('<pre>' . mysql_error() . '</pre>' );
没有任何检查,自然就可以控制id了,如果我们的输入是“' union select ....”,那么就相当于多执行了一个语句。当然,用什么语句也是很讲究的。
再来看medium等级的
//medium.php if (isset($_GET['Submit'])) { // Retrieve data $id = $_GET['id']; $id = mysql_real_escape_string($id); $getid = "SELECT first_name, last_name FROM users WHERE user_id = $id"; $result = mysql_query($getid) or die('<pre>' . mysql_error() . '</pre>' ); $num = mysql_numrows($result);
虽然$id经过了mysql_real_escape_string转义了’,可是因为后面的SQL语句$id没有单引号保护,会被系统认为是数值型,导致数值型注入。。
这个时候构造,连分号都不要了。。“ 1 union select ...”
DVWA的基本漏洞——XSS
脚本问题,终极目的是窃取cookie什么的。。
DVWA下的;low等级下,几乎没有什么防护,直接插入语句就可以了,像
<script>alert("五更钟")<script>
<script>alert(document.cookie)<script>
medium.php中,虽然对$message进行了尖括号转义,而且对
<script>进行了替换,但是$name没有进行转义,而且跨站脚本可以用多种标签,如
<img />,等…。Name的
<input />限制了maxlength=‘10’的长度,但是我们的防御对象是精通技术的黑客。这种html下的长度限制是可以直接通过浏览器修改..然后通过大小写成功绕过str_replace(),插入XSS.
相关文章推荐
- 【论文笔记】二值化神经网络(Binarized Neural Network)
- 安卓布局(上中下布局)
- 关于TCP协议收到数据不完整
- 黑鸭宣布开源项目-年度新秀
- SQL 内/外连接 示意图
- 生活小常识
- 比较牛X的学姐的博客地址-上海交大软件工程毕业
- WCF学习之旅——第一个WCF示例(三)
- 好难
- [Unity] UGUI研究院之游戏摇杆
- php 给图片增加背景平铺水印代码
- 为什么你写不好一个快速排序? 谈程序员的职业发展
- Android 日常开发总结的技术经验 60 条
- Missing separate debuginfos
- jsonobject 遍历 org.json.JSONObject
- python异步
- 微信公众帐号开发教程第13篇-自定义菜单的创建及菜单事件响应
- 最近学习的总结
- Js 字符串中提取数字
- MYSQL启用日志,和查看日志