首页 > 代码库 > 关于DVWA的学习

关于DVWA的学习

1.先说一下DVWA的搭建:http://www.freebuf.com/sectool/102661.html  这个教程已经说的很清楚了,就不加赘述了,讲一下自己装的时候出现的小问题吧

1)有一点过于依赖教程了,强行去安装了winxp,装了半天,突然发现,有点不对,直接以前的win7或者物理机应该就可以用了啊,哇,浪费了时间,装完了才意识到这个问题,我觉得还是太依赖教程了,还有就是应该先看一遍教程再来搭建的。

2)后来就和教程搭建的有些不一样了,直接扔WWW,访问不了,强行跳过,把config改了,页面刷新,create,连接kali,稳妥出现了登录界面。贴一个http://www.cnblogs.com/MiWhite/p/6535436.html 安装教程。主要是github上(GitHub是个好地方)下载dvwa~的地方,感觉这个对漏洞的介绍也不错:http://taiji007.blog.51cto.com/11034834/1738532

 

2.下面就是一些零碎的关于里面漏洞的学习了,这个网站说的很清楚,但是还是自己先搞一下,学一下相关的原理,再看(看懂源码很重要!

     http://www.freebuf.com/articles/web/116437.html 这是相关可以学习的网站

1)命令执行漏洞

①ping命令:相当于一个连通器,“ping”命令可以检查网络是否连通 使用方式:Ping空格IP地址    具体使用方法cmd里面:ping/?  (有一个就是这个漏洞进去之后我觉得就像cmd里面的用法了)

   形成原因:对一些危险函数没有做过滤。

   相关函数:system()、exec()、passthru()、‘‘反引号、shell_exec()、popen()、proc_open()等等。

 

②区分命令执行和代码执行:

命令执行是直接调用操作系统的命令

代码执行漏洞是靠执行脚本代码调用操作系统命令 (eval)

 

③常用命令

ipconfig 查看本地网络

net  user   查看系统用户

dir  查看当前目录

find 查找包含指定字符的行

whoami 查看系统当前有效用户名

 

④命令拼接符:

A&B  A无论是否执行成功,都会执行B

A&&B  A执行成功,然后才会执行B

A|B    将A的输出作为B的输入,并且只打印B执行的结果。

A||B    A执行失败,然后才会执行B

 

后记:命令注入可以写一句话,嘿嘿嘿~(转义问题:http://blog.csdn.net/hitwangpeng/article/details/45716821)

2)CSRF(跨站请求伪造) :http://www.freebuf.com/articles/web/55965.html

 

 emmmm…..这个觉得有点混乱,我希望有机会自己复现一下漏洞测试一下,感觉只是粗略的懂了一点原理。

进行CSRF的时候,我自己也有一个服务器,把我要搞事的html放在受害者正在浏览的服务器下,等他点击之后,就在他的服务器上完成了一些我想要的攻击,大概我理解的是这个意思,一般还要和这个xss组合一下。

 

找cve或者cms通用漏洞复现一下,在网上找一下利用过程。

 

 

3)暴力破解

主要是burp的使用,抓包之后send to introuder ,clear之后 选中自己要破解的东西,然后add,加入自己的字典,开始start attack  (这里字典要自己做,百度文库还是有的,可以初期将就用一下)

 

4)文件包含,文件上传

文件包含:指当服务器开启allow_url_include选项时,就可以通过php的某些特性函数(include(),require()和include_once(),require_once())利用url去动态包含文件,此时如果没有对文件来源进行严格审查,就会导致任意文件读取或者任意命令执行。文件包含漏洞分为本地文件包含漏洞与远程文件包含漏洞,远程文件包含漏洞是因为开启了php配置中的allow_url_fopen选项(选项开启之后,服务器允许包含一个远程的文件)。文件包含漏洞常常会导致任意文件读取与任意命令执行。

远程包含

 

文件上传:emm,因为还没有遇见过上传直接含有一句话图片的情况,也是一样的。

            文件上传的几种形式到时候特地开一个写一下吧。

 

5)Insecure CAPTCHA (不安全的验证码)

 这个因为一些特殊原因,我没见过,现在就见过这个题目的用抓包修改参数,比如修改step,以及加一些限制的参数….哎呦,这个是真的难,还是不是很懂。

技术分享

 

这里是源码,对参数passed_captcha的检查,如果参数值为true,则认为用户已经通过了验证码的检查  这是他的包

技术分享

 

  并没有这个参数 passed_captcha的存在 不知道在构造的时候技术分享箭头这里咋搞出来的?

 

   经过一波询问,可以通过其他漏洞找到代码之类的,啊,还是不知道用什么办法。右键?

  希望可以装一下api 找一个时间研究一下

 

6)sql注入

新姿势:用抓包修改传递的数据,哇,Burp是个好东西   (比如http头注入啦,还有这个例题上的前端使用了下拉选择菜单,我们可以通过抓包改参数,提交恶意构造的查询参数)

盲注:总结了一些知识,但是我觉得可能实战还是工具来的快一点吧,这个测试太慢了

7)XSS

这个有一种技术分享

 

的感觉。还是写一下我的理解。因为xss要研究JS,现在还没办法深入研究。

Xss攻击是在网页中嵌入客户端恶意脚本代码。就像是在<script>与</script>之间输入JS的代码,然后搞事情。弹框是为了验证有没有这个漏洞,然后中间就可以插入一些语句加载外部的脚本,比如就可以盗取cookie了。

 

反射型XSS:就是访问一个带有XSS代码的URL请求时,服务器端接收数据,然后把这个有xss的代码数据发送到浏览器。

储存型XSS:就是攻击的人提交一段XSS,服务器就接收了之后,存储起来,只要用户访问这个页面,就会被读出来,就有攻击了。

DOM型的XSS由于其特殊性,常常被分为第三种,这是一种基于DOM树的XSS。例如服务器端经常使用document.boby.innerHtml等函数动态生成html页面,如果这些函数在引用某些变量时没有进行过滤或检查,就会产生DOM型的XSS。DOM型XSS可能是存储型,也有可能是反射型。

DOM型XSS是不需要与服务器端交互的,只发生在客户端处理数据阶段。

 

大概理论就是这么多吧,先了解一下这些漏洞吧。学了理论下面就实践吧~(*^__^*) 嘻嘻……

关于DVWA的学习