Dvwa writeup
DVWA(Dam vulnerable Web Application)是使用PHP+Mysql编写的一套用于常规漏洞教学和漏洞挖掘的一个测试学习程序,在此程序中包含了常见的web方面的漏洞,如命令行执行(Command Execution),CSRF、文件包含(File Inclusion)、SQL注入(SQL Injection)、SQL盲注(SQL Injection Blind)、文件上传(Upload)、反射型XSS(XSS reflected)、存储型XSS(XSS stored)。DVWA还可以设置漏洞的难度,在DVWA1.8版本中存在low,medium以及high三种级别的,在新版DVWA1.9中,则存在low、medium、high和impossible四种级别。对于想了解web安全的同学或者是有志于从事web安全方向但是对web安全不了解的同学可以利用DVWA这个参透测试演练系统提供对web安全的认识。在本文中主要是基于windows7平台下的DVWA1.8版本的讲解。
0X00 command injection
Low
源码分析
1 |
<?php |
从代码可以看出,代码没有对输入的IP进行任何的判断和过滤就直接使用了$_REQUEST[ip]来接受从页面传递过来的值。在此代码中使用了以下的函数。
- php_uname():是用于返回运行PHP的操作系统的描述,和phpinfo()最顶端上输出的是同一个字符串。php_uname()函数中参数可以有多种不同的值。当参数为s时,php_uname()返回的是操作系统的名称,如FreeBSD或者是Windows NT等等。
- shell_exec():通过shell环境变量执行命令,并且将完成的输出以字符串的方式返回。所以在本代码中,shell_exec()方法就是用来执行ping命令的。
- 命令连接符和管道:在shell中可以使用命令连接符或者是管道的方式同时在一条语句中同时运行多个命令。
| 管道符,将上一个命令的输出作为下一个命令的输入
& 连接符,使用&符号时,就可以同时运行多条命令
; Linux环境下的连接符,和&作用相同
&& 逻辑与,只有在前面的命令执行成功时,后面的命令才会执行
|| 逻辑或,前面的命令如果执行成功,后面的命令则不执行
在完全没有对代码进行过滤的情况下,如果是在Linux环境下,输入
1 |
127.0.0.1 & /etc/passwd |
那么就会造成命令执行的攻击了。
medium
源码分析
1 |
|| cat /etc/passwd |
high
目前还无法破解
0X01 file inclusion
low/medium:
答案可以有很多
1 |
../../../../../../etc/passwd |
high:
限制了file为include.php,导致无法进行文件包含的漏洞
SQL Injection
low
1’ 或者使用 1 or 1=1# 同样可以,那么说明就存在sql注入漏洞
1 |
%' and '0'='0 |
Dvwa writeup的更多相关文章
- 在xampp中配置dvwa
DVWA主要是用于学习Web的常见攻击,比如SQL注入.XSS等的一个渗透测试系统,下面我将结合XAMPP来说明它的安装过程. 一.环境 OS:Windows 10 XAMPP:5.6.24 DVWA ...
- 2016第七季极客大挑战Writeup
第一次接触CTF,只会做杂项和一点点Web题--因为时间比较仓促,写的比较简略.以后再写下工具使用什么的. 纯新手,啥都不会.处于瑟瑟发抖的状态. 一.MISC 1.签到题 直接填入题目所给的SYC{ ...
- DVWA安装,ALMP环境搭建以及php版本转换
前言 本文记录DVWA(Damn Vulberability Web App)在虚拟机中安装配置,包括ALMP环境的搭建和php版本的转换. 目录 2. ALMP环境搭建 3. php版本切换 一. ...
- ISCC2016 WriteUp
日期: 2016-05-01~ 注:隔了好久才发布这篇文章,还有两道Pwn的题没放,过一阵子放上.刚开始做这个题,后来恰巧赶上校内CTF比赛,就把重心放在了那个上面. 这是第一次做类似于CTF的题,在 ...
- DAY5 DVWA之SQL注入演练(low)
1.设置 把安全等级先调整为low,让自己获得点信心,免得一来就被打脸. 2.测试和分析页面的功能 这里有一个输入框 根据上面的提示,输入用户的id.然后我们输入之后,发现它返回了关于这个 ...
- dvwa第一次接触
DVWA (Damn Vulnerable Web Application)DVWA是用PHP+Mysql编写的一套用于常规WEB漏洞教学和检测的WEB脆弱性测试程序.包含了SQL注入.XSS.盲注等 ...
- 参加 Tokyo Westerns / MMA CTF 2nd 2016 经验与感悟 TWCTF 2016 WriteUp
洒家近期参加了 Tokyo Westerns / MMA CTF 2nd 2016(TWCTF) 比赛,不得不说国际赛的玩法比国内赛更有玩头,有的题给洒家一种一看就知道怎么做,但是做出来还需要洒家拍一 ...
- 配置安装DVWA
本文地址:http://www.cnblogs.com/go2bed/p/4162313.html —————————————————— 什么是DVWA? Damn Vulnerable Web Ap ...
- 爱春秋之戏说春秋 Writeup
爱春秋之戏说春秋 Writeup 第一关 图穷匕见 这一关关键是给了一个图片,将图片下载到本地后,打开以及查看属性均无任何发现,尝试把图片转换为.txt格式.在文本的最后发现这样一串有规律的代码: 形 ...
随机推荐
- 小型工厂企业网站究竟该怎么做好SEO优化,从而带来更多订单?
中 小企业以及小型工厂做好SEO工作,每年从SEO带来的订单量还是很可观的,随着互联网的蓬勃发展,越来越多的小型工厂型企业网站开始逐渐走向互联网营 销,开始逐渐利用互联网开展销售工作!但是大部分的工厂 ...
- 原创:SAP LVC ALV编辑小技巧
前两天有个打印需求变更,需要在ALV显示列表中添加两个字段,可编辑,而我自己用的是函数:REUSE_ALV_GRID_DISPLAY_LVC 因为之前做可编辑基本都是固定套路,定义类,画屏幕.... ...
- JAVA- File类
File类是IO包中唯一代表磁盘文件本身的对象.File类定义了一些与一台无关的方法来操作文件,可以通过调用File类中的方法,实现创建.修改.删除文件等功能.File类的对象主要用来获取文件本身的一 ...
- 关于android4.3 Intel X86 Atom System Image的下载
今天建立android4.3模拟器的时候发现没有android4.3 Intel X86 Atom System Image可选,打开android SDK Manager 于是希望重现选择下载安装, ...
- DDMS无法查看data/data目录?
今天andorid 学习用真机来尝试用Android SQLite数据库时,从DDMS的FileExplore查看数据库文件时会发现里面是空的什么也没有,之前用的一直都是模拟器,现如今用真机 捣鼓了小 ...
- 【读书笔记】iOS-GCD-使用方法
代码: -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { dispatch_async(dispatch_get_gl ...
- IOS 杂笔-18 (let 与 var)
var 是 variable的缩写形式,是变量的意思 ,是可改变的,并不是数据类型. let 是常量的意思,不可改变的.
- iOS-多线程之NSOperation
前言 这篇文章主要讲NSOperation的使用. What 使用NSOperation和NSOperationQueue进行多线程开发类似于线程池,只要将一个NSOperation(实际开发中需要使 ...
- 深入理解java虚拟机(7)---线程安全 & 锁优化
关于线程安全的话题,足可以使用一本书来讲解这些东西.<Java Concurrency in Practice> 就是讲解这些的,在这里 主要还是分析JVM中关于线程安全这块的内容. 1. ...
- [转载] 关于PreparedStatement.addBatch()方法
Statement和PreparedStatement的区别就不多废话了,直接说PreparedStatement最重要的addbatch()结构的使用. 1.建立链接(打电话拨号) Connecti ...