首页 > 其他分享 >【小猪学渗透】打靶第2天:DVWA入门:暴力破解、命令注入、文件上传

【小猪学渗透】打靶第2天:DVWA入门:暴力破解、命令注入、文件上传

时间:2024-03-20 12:30:27浏览次数:229  
标签:文件 用户名 暴力破解 打靶 DVWA 木马 上传 破解 字典

暴力破解

low

题目界面如上

在这里插入图片描述
先抓个包试试,发送到intruder
在这里插入图片描述
可以看到用GET数据包传输,username和password都是直接写在了url上
在这里插入图片描述
在password后面的数字上加上$ 123 $ 这样好进行替换。

在这里插入图片描述
报错,没有加载字典,在知乎上找到了一篇文章讲字典的
找到了一个老的字典库
在这里插入图片描述
开始攻击,在这里插入图片描述
发现其他的密码返回的长度都是4645和4646,只有正确的密码返回的是4695,所以说密码是password。

至于attack type是什么个意思,接下来告诉你。

Attack type:攻击模式设置

Sniper:对变量一次进行破解,多个标记依次进行。(俗话简单来说就是,用户名和密码用的是一套字典,破解的时候也只是导入一个字典,但是它会根据先破解用户名,破解出来以后急需破解密码这样的顺序,对于简单的用户名密码字典数目少的可以考虑)

Battering
ram:对变量同时进行破解,多个标记同时进行。(这个也是只有一个字典但区别是,可以同时进行,就是先破解用户名破解完了继续破解密码,相比遇上一个速度更快)

Pitchfork:每一个变量标记对应一个字典,取每个字典的对应项。(这个意思就是,每个变量一个字典,破解的时候每个字典的一号对应另一个字典的一号进行破解,这样破解对于那些一一对应的用户名密码来说速度很快,但很明显我们没办法准确的定位用户名和密码,显然不适用于每个情况)

Cluster
bomb:每个变量对应一个字典,并且进行交际破解,尝试各种组合,适合于用户名加密码破解。(这种情况就是普罗大众很容易明白理解的情况就是多个字典进行笛卡尔积,依次破解,这种就会有多种组合,时间上也是一个问题,当然对于需要用时很长的,我们可以添加进程,用来适量缩短时间)

medium
在这里插入图片描述
medium的页面看起来和low没啥区别。
在这里插入图片描述
操作起来也没啥区别,依旧可以破解

high

这一关与之前的区别主要在于token

(解释来自于百度)
Token是在客户端频繁向服务端请求数据,服务端频繁的去数据库查询用户名和密码并进行对比,判断用户名和密码正确与否,并作出相应提示,在这样的背景下,Token便应运而生。Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Token前来请求数据即可,无需再次带上用户名和密码。Token的目的是为了减轻服务器的压力,减少频繁的查询数据库,使服务器更加健壮。

在这里插入图片描述
可见GET数据包内的确使用了token,攻略里面说token和密码都需要爆破
在setting中,找到Grep-Extract选项卡,单击add,选择refetch response
在这里插入图片描述

在这里插入图片描述
多次操作之后出现了302重定向,需要重新抓包
在这里插入图片描述
装载字典
在这里插入图片描述
装载recursive
在这里插入图片描述
设置错误
经过修改之后发现了,攻击模式需要改为Pitchfork,并且需要选择变量的攻击模式,变量1选择常规字典字典,变量2选择recusice grep模式。
在这里插入图片描述

命令注入

什么是命令注入:

命令注入就是在需要输入数据的地方输入了恶意代码,而且系统并没有对其进行过滤或者其他处理导致恶意代码也被执行,最终导致数据泄露或者正常数据被破坏。

常用到的命令:(总结来说就是系统操作命令DOS命令都可以在此执行试试)ipconfig,net user(查看系统用户),dir(查看当前目录),find(查找包含指定字符的行),whoami(查看系统当前有效用户名)A&B(简单的拼接,AB之间无制约关系),A&&B(A执行成功才会执行B),A|B(A的输出作为B的输入),A||B(A执行失败,然后才会执行B)

low
在这里插入图片描述
127.0.0.1类似于ping命令
在这里插入图片描述
乱码问题没有遇到,不过改成中文应该更容易看吧,我来试试。
在这里插入图片描述
然并卵,没有啥*用,仍然是英文界面,不过英文界面就英文界面吧。OK,输入一下127.0.0.1 & ipconfig 试试
在这里插入图片描述
果不其然执行了,net user一下
在这里插入图片描述
也可以执行
systemifo查一下系统
在这里插入图片描述
也阔以,蛋疼的是截图只能截一半
dir看下目录

也行

medium

查看源代码之后发现了转义的变换,也就是说我们使用非&&命令就好了,所以可以使用 | 或者 &
让我们试试
在这里插入图片描述
在这里插入图片描述
均一切正常

high
在这里插入图片描述
还是看源码,发现了对||的转义有问题,可以在|和|之间存在空格,所以可以通过||完成之前的操作
在这里插入图片描述
而单个的|则不能完成

文件上传

什么是文件上传漏洞:

大部分的网站和应用都有上传功能,如用户头像上传,图片,logo,文档等。一些文件上传功能实现代码没有严格限制用户上传的文件后缀以及文件类型,导致允许攻击者像某个可通过web访问的目录上传任意php文件,并能够将这些文件传递给php解释器,就可以在远程服务器上执行任意php脚本。

当系统存在文件上传漏洞同时攻击者可以将病毒,木马,webshell,其他恶意脚本或者是包含了脚本的图片上传到服务器,这些文件将对攻击者后续攻击提供便利。根据具体漏洞的差异,此处上传的脚本可以使正常后缀的php,asp以及jsp脚本,也可以是篡改后缀后的这几类脚本。

文件上传漏洞是指由于程序员在对用户文件上传部分的控制不足或者处理缺陷,而导致的用户可以越过其本身权限向服务器上传可执行的动态脚本文件。这里上传的文件可以是木马,病毒,恶意脚本或者WebShell等。这种攻击方式是最为直接和有效的,“文件上传”本身没有问题,有问题的是文件上传后,服务器怎么处理、解释文件。如果服务器的处理逻辑做的不够安全,则会导致严重的后果。

造成文件上传漏洞的原因及原理

原因:

1 对于上传文件的后缀名(扩展名)没有做较为严格的限制

2 对于上传文件的MIMETYPE(用于描述文件的类型的一种表述方法) 没有做检查

3 权限上没有对于上传的文件目录设置不可执行权限,(尤其是对于shebang类型的文件)

4 对于web server对于上传文件或者指定目录的行为没有做限制

原理:

在 WEB 中进行文件上传的原理是通过将表单设为 multipart/form-data,同时加入文件域,而后通过 HTTP
协议将文件内容发送到服务器,服务器端读取这个分段 (multipart)
的数据信息,并将其中的文件内容提取出来并保存的。通常,在进行文件保存的时候,服务器端会读取文件的原始文件名,并从这个原始文件名中得出文件的扩展名,而后随机为文件起一个文件名
( 为了防止重复 ),并且加上原始文件的扩展名来保存到服务器上。

文件上传可能带来的安全问题:

-上传文件是web脚本语言,服务器的web容器解释并执行了用户上传的脚本,导致代码执行;

-上传文件是flash的策略文件crossdomiain.xml,黑客用以控制flash在该域下的行为;

-上传文件是病毒、木马,黑客用以诱骗用户或者管理员下载执行;

-上传文件是钓鱼图片或为包含了脚本的图片,在某些版本的浏览器中会被作为脚本执行,被用于钓鱼和欺诈。

参考内容:文件上传漏洞小总结_whoim_i的博客-CSDN博客_什么是文件上传漏洞

写一个一句话木马

在这里插入图片描述

上传一个一句话木马
在这里插入图片描述
尝试构造一下访问地址,但是只显示了phpinfo
在这里插入图片描述
修改之后成功,发现是一句话木马写错了:
修改过后是这样的:
在这里插入图片描述
注意斜划线的书写很重要。

在这里插入图片描述

medium
在这里插入图片描述
这一关对上传的格式进行了限制,只能上传图片,看来需要上传图片马了吧。
看了攻略只是采取的是使用抓包的手法。

在这里插入图片描述
抓包之后是这个样子的,发给repeater,把后缀修改为png,
在这里插入图片描述
显示没有上传成功
在这里插入图片描述
发现是需要修改Content-Type: image/jpeg
修改完毕上传成功了

high
我们会发现如果只是简单的把一句话木马的文件后缀进行修改后仍旧无法上传,那是因为对文件头进行限制,所以简单的修改后缀已经无法满足了。接下来需要用到的是图片马,什么意思,就是把你的一句话木马文件的内容复制到图片上面,通过上传图片,把一句话木马传进去。
图片马生成命令:copy 666.png /b + 1.txt /a 888.png(//666是图片,1.txt是一句话木马所在的文件,888是复制完成之后的图片命名)
在这里插入图片描述
无法上传,可能是因为图片大小太大了,改一下。

必须按照命令的写法,有空格的地方必须空格,生成好了
在这里插入图片描述
现在上传,果然成功了。

标签:文件,用户名,暴力破解,打靶,DVWA,木马,上传,破解,字典
From: https://blog.csdn.net/weixin_43521720/article/details/136834815

相关文章

  • 【小猪学渗透】打靶第1天:DVWA入门:SQL注入、SQL盲注
    前言小猪同学正式开始了渗透测试的学习,今天是入门打靶DWVA--真是开心的一天呢--参考文章这是一篇来自于csdn的攻略文开始-环境搭建小猪同学已经事先搭建好了靶场。sql手工注入low输入1and1=1判断注入点输入1’and1=1报错发现注入点,受到单引号闭合的影响......
  • DVWA靶场 之Command Injection。
    说明:这个靶场在虚拟机中,用主机通过靶场的漏洞远程连接虚拟机。命令拼接:|:管道符,直接执行后面的语句。||:前面的语句出错时才执行后面的语句。&:无论前面的语句是真是假都会执行后面的语句。&&:前面的语句为真才执行后面的语句。DVWASecurity:Low创建用户c:127.0.0.1&netuse......
  • DVWA 靶场搭建
    文章目录1DVWA简介2DVWA安装1DVWA简介DVWA(DamnVulnerableWebApp)是一个基于“PHP+MySQL”搭建的Web应用程序,皆在为安全专业人员测试自己的专业技能和工具提供合法的环境,帮助Web开发者更好地理解Web应用安全防范的过程DVWA一共包括十个模块:(1)BruceForc......
  • 红日靶场01多角度打靶笔记
    红日靶场01这个笔记主要是利用这个靶场环境,对内网渗透的思路进行整合一下,因此过程中会涉及多个攻击方式和思路。环境搭建windows7是靶机01Windowsserver2008R2是靶机02Windowsserver2003是靶机03Windows10是攻击01kali是攻击02(cs服务端和msf都在上面)这个靶......
  • DVWA-Javascript
    Javascript漏洞指的是通过某种方式绕过前端的javascript逻辑进行服务器访问。 --low级别:服务器端代码:提交token无效的结果如下:因为这里要求是在文本框中提交success内容,并且获取到最新token信息,才能提交成功。因此,先在文本框中输入success,然后再console控制台中,手动调用g......
  • DVWA-XSS(Stored)存储型跨站脚本攻击
    DVWA-XSS(Stored)存储型XSS是一种持久型XSS,与DOM型和Reflected型区别在于将恶意脚本注入到网站的某个存储区域,如数据库或其他文件类型中。每当访问网站时,服务器在生成页面时,将含有恶意脚本当做有效内容插入到页面中,并响应给用户。浏览器就会执行页面中的恶意脚本,从而对访问者造成攻......
  • DVWA-SQL Injection(Blind) SQL盲注
    一般的sql注入是当提交完成后,会将sql的执行结果直接显示在页面或响应信息中。而sql盲注是提交完请求后,不管是执行成功还是失败,都无法直接知道执行结果。只能根据返回的信息来判断。sql盲注常用函数:if()语法格式:if(expr1,expr2,expr3)功能:Expr1为true则返回expr2,expr1为fals......
  • DVWA-SQL Injection(sql注入)
    Sql注入是通过传递含有恶意sql语句的命令,使服务器在组织sql语句时,破坏掉原来的sql语句结构。从而达到执行恶意sql语句的目的。DVWASQLInjection级别--low--medium--high--impossible --low级别:服务器端代码:<?phpif(isset($_REQUEST['Submit']......
  • DVWA-Insecure CAPTCHA(不安全的验证码)
    InsecureCAPTCHA意思是不安全的验证码,指验证在验证过程中,存在逻辑漏洞,导致可以绕过验证。CAPTCHA全称为:CompletelyAutomatedPublicTuringTesttoTellComputersandHumansApart(全自动区分计算机和人类的图灵测试)。DVWA-InsecureCAPTCHA级别:--low--medium......
  • DVWA-File Upload(文件上传漏洞)
    FileUpload文件上传漏洞是通过上传文件功能,上传一些可执行的脚本文件,且服务器端没有对上传的文件进行严格的校验或者在服务器端没有对上传的文件进行安全策略的配置,导致文件能成功上传到服务器上,且能够解析执行。DVWA-FileUpload的级别:--low--medium--high......