第四课:Asp代码审计--项目实战2

0x00 任务背景:

需要得知周某某的今年采购的其中一个项目具体信息,目前已知该成员是xxx电网。负责丰满大坝的采购人员。整体思路如下:
    找到开发公司 -> 得到源码 -> 审计问题 -> 得到shell -> 拿到服务器 ->
    得到域控(或者终端管理) -> 得到个人机 -> 下载任务文件。
得知该电网公司电网相关网站是某公司出品,得到某公司对外宣传网站,并且得到该公司服务器权限,下载源码模板。

0x01 源码审计:

全局共计2个主要文件,分别是Function.asp,Startup.asp。

1、Function.asp

后台验证项:
    来源验证:
    注入验证:(目标服务器waf,遂放弃)
    错误处理:
    XSS字符处理:
    直接输入admin/下文件名处理:
    目录生成:针对iis6以及iis7 php版本

2、Startup.asp

    配置文件:当不可以执行的时候,是否可以备份出数据库,以便下载。
    关于新闻显示,全局incude head.asp

3、check_si.asp

其中 check_si.asp 主要为防止注入
    Get注入
    Post 注入 新版本中加入post注入
过程中遇到服务器卡顿现象,也就是不清楚列名数,本地二分法测试如下:

4、database.asp

在 admin 目录下有个 database.asp 文件

0x02 目标测试:

1、越权漏洞

根据以上信息,构造 referrer,构造参数,禁止js。产生出越权漏洞。

2、上传

根据越权漏洞,继续看upload.asp文件,允许匿名上传图片文件。在根据越权漏洞备份出webshell文件

3、Get Shell

得到webshell

4、开启 3389

对方没有开启远程桌面,开启:
1
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
Copied!

5、Get Admin

通过该服务器得到mssql 数据库。得到终端管理权限。

6、查找目标

查看在线机器,查找目标人物。

7、推送 Payload

推送payload 反弹。

8、目标确认

确定是否为目标人物:采购员 桌面截图

9、Download

按照任务 取得该人员的其中一个xls文件

10、Mission Completed

任务完成。
--By Micropoor
Last modified 2yr ago