今天和大家分享一下aspx网站的代码审计,漏洞类型为:未授权访问和任意文件下载。

本文作者:i春秋签约作家——非主流

今天看的源码文件就不共享给大家了,本文只作学习只用。

还是先看我们的文件夹目录和dll文件的目录:

这是网站根目录

正常打开,是会跳转到/2052/aspx/userlogin.aspx

Dll使用ILSpy反编译后,目录如下:

在代码审计中,类似未授权访问的漏洞是最好验证的,像一般aspx网站开发时,都会将dll中的类和页面与显示的aspx文件的名称命名一样说简单点,就是比如这里的jtgcweb.2052.aspx下的userlogin,就对应着文件夹2052/aspx/userlogin.aspx文件

话不多说,我们直接开始吧。

我们直接定位到存在未授权访问和任意文件下载漏洞的文件:/2052/Aspx/gw/download.aspx

文件说的很清楚,源码在这里

_2052_Aspx_Message_Download

通过源码,我们其实已经可以发现,好像并没有什么验证的脚本或是函数嘛。我们直接访问看看。既不报错,也不提示什么,单纯的一个无标题页,嗯,看来这个文件是可以直接在没有登陆的情况下请求到的。

接着分析上面的源码截图,学过asp的都知道,Request.QueryString()函数意指程序通过http的get方法进行参数传递,所以,这里我们便需要传递两个参数(分别是name和oid)进去,才可以完成这个if判断。

所以,我们暂时构造请求格式如下:

http://xxxxx/2052/Aspx/gw/download.aspx?name=1&oid=1

base.Response.AppendHeader(“Content-Disposition”, ”attachment; filename=” + base.Server.UrlPathEncode(text)); //这段代码的意思是指,从download.aspx文件所在的目录,开始下载文件,文件的名字从哪来?从text来,text的值又从哪来?从我们get请求中的name参数的值来。所以,我们试试get请求这个呢?

web.config文件在网站的根目录,download.aspx文件在2052/aspx/gw/目录下。

http://xxxxxxx/2052/Aspx/gw/download.aspx?name=../../../web.config&oid=/

这里为什么会报错呢?很奇怪啊,我们再分析分析源码看看。

哦,原来是这样,我们通过最后一句被传输的filename的值是通过str2和text的值拼接的。

Text的值,我们搞定了,但是str2的值呢,是通过str来决定的,也就是我们的oid参数,所以当我们将oid的值改为../的时候,str2指向的目录才是网站的根目录,那么我们现在再来试试?

http://xxxxxxx/2052/Aspx/gw/download.aspx?name=../../../web.config&oid=../

成功下载,我们打开看看呗?

很nice,所以,今天的任意文件下载漏洞和未授权访问漏洞,你学到了吗?

aspx代码审计-2的更多相关文章

  1. aspx代码审计-1

    今天和大家分享一下aspx网站的代码审计,漏洞类型就是SQL注入和cookie欺骗. 本文作者:i春秋签约作家——非主流 今天看的cms名字叫做:XX星员工请假系统 我们首先看一下网站的目录结构: 其 ...

  2. asp代码审计

    今天给大家带来的是asp程序的代码审计,asp和aspx代码审计来说,有很多相同的地方. 正好今天要交任务,最近的目标站的子域名使用了这个cms,但是版本不一定是这个,好累. 本文作者:i春秋签约作家 ...

  3. PHPCMSV9版本代码审计学习

    学习代码审计,自己简单记录一下.如有错误望师傅斧正. PHPCMS预备知识 PHPCMS是采用MVC设计模式开发,基于模块和操作的方式进行访问,采用单一入口模式进行项目部署和访问,无论访问任何一个模块 ...

  4. ajax请求和aspx返回数据

    ajax请求: $(function () {            $.ajax({                url: "index.aspx?method=send",  ...

  5. Atitit.java c#.net php项目中的view复用(jsp,aspx,php的复用)

    Atitit.java c#.net php项目中的view复用(jsp,aspx,php的复用) 1.1. Keyword1 1.2. 前言1 2. Java项目使用.Net的aspx页面view1 ...

  6. 多页的TIFF图片在aspx页面分页显示

    一.逻辑实现:将数据库中的二进制TIFF图片读出并分页显示在页面上. 1.显示界面 public FrameDimension MyGuid; ; ; public static MemoryStre ...

  7. XP安装IIS来加载aspx页面(Web调用SAP数据)

    1,安装IIS 在XP中安装IIS方法很简单,安装时需要提供安装光盘来加载I386文件,可以使用虚拟光驱或光盘.在此做个简单说明(控制面板-添加/删除 Windows组件-勾选Internet信息服务 ...

  8. 仅用aspx文件实现Ajax调用后台cs程序。(实例)

    仅用aspx文件实现Ajax调用后台cs无刷新程序.(实例) 两个文件:aaa.aspx 和aaa.aspx.cs 一.aaa.aspx <script type="text/java ...

  9. http://www.microsoft.com/en-pk/download/details.aspx?id=40762

    http://www.microsoft.com/en-pk/download/details.aspx?id=40762

随机推荐

  1. js中元素结点的引用

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  2. S 导员工信息

    EXCEL模板 [Public] ConnectString=host="siebel://10.10.1.174:2321/SBA_NR_DEV/SMObjMgr_chs ConnectU ...

  3. OPENSSL 生成https 客户端证书

    下面说下拿服务器证书.(前提是服务器是https,客户端认证用的时候),服务端不给的时候,我们自己去拿(不给怼他!,哈哈,开个玩笑,都会给的) openssl s_client -connect 域名 ...

  4. Rabbitmq的几种交换机模式

    Rabbitmq的核心概念(如下图所示):有虚拟主机.交换机.队列.绑定: 交换机可以理解成具有路由表的路由程序,仅此而已.每个消息都有一个称为路由键(routing key)的属性,就是一个简单的字 ...

  5. Qt Thread

    Threading Classes (Qt help manual key words) These Qt Core classes provide threading support to appl ...

  6. sort_contours_xld算子的几种排序方式研究

    算子sort_contours_xld算子有5种排序方式,即: 'upper_left': The position is determined by the upper left corner of ...

  7. JetBrains全家桶激活地址

    全家桶地址:https://www.jetbrains.com/products.html?fromMenu JetBrains 授权服务器(License Server URL):http://id ...

  8. Python爬虫利器一之Requests库的用法

    前言 之前我们用了 urllib 库,这个作为入门的工具还是不错的,对了解一些爬虫的基本理念,掌握爬虫爬取的流程有所帮助.入门之后,我们就需要学习一些更加高级的内容和工具来方便我们的爬取.那么这一节来 ...

  9. centos 安装部署.net core站点

    安装 net core sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm s ...

  10. 【记录】CentOS7安装NODEBB

    NodeBB介绍: NodeBB 是一个更好的论坛平台,专门为现代网络打造.它是免费的,易于使用. NodeBB 论坛软件是基于 Node.js开发,支持 Redis 或 MongoDB 的数据库.它 ...