免责声明
由于传播、利用本公众号夜组安全所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号夜组安全及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
朋友们现在只对常读和星标的公众号才展示大图推送,建议大家把夜组安全“设为星标”,否则可能就看不到了啦!
01
工具介绍
针对内网渗透中发现的目录遍历站点,比如python开启的目录Directory listing for,对目录下所有文件爬取出文件名、大小,方便快速收集信息。
02
工具使用
python3 CrDirectory.py -u http://127.0.0.103
工具脚本
# -*- coding: UTF-8 -*-import requestsfrom bs4 import BeautifulSoupimport osimport urllibfrom urllib import parseimport argparsedef get_file_info(url, file_path):# 发送 HEAD 请求获取文件大小file_response = requests.head(url)# 获取文件大小(以字节为单位)content_length = file_response.headers.get("Content-Length")# 获取文件名filename = os.path.basename(url)# 打印文件名、大小和访问路径print(f"文件名:{urllib.parse.unquote(filename)},n大小:{content_length} 字节,路径:{base_url+'/'+urllib.parse.unquote(file_path)+urllib.parse.unquote(filename)}")def crawl_website(url, old_path,file_path="/"):# 发送 GET 请求获取网页内容response = requests.get(url)# 解析网页内容soup = BeautifulSoup(response.text, "html.parser")# 获取所有链接标签links = soup.find_all("a")# 遍历链接标签for link in links:# 获取链接的相对路径href = link.get("href")# 拼接完整 URLif href == old_path :# 判断是否为跳转上一级breakurl = f"{base_url}/{href}"# 判断是否为文件夹if href.endswith("/"):folder_path = os.path.join(file_path, href)crawl_website(url, file_path, folder_path)else:get_file_info(url, file_path)# 开始爬取网站parser = argparse.ArgumentParser(description='检测一个url')parser.add_argument('-u', type=str, help='目标url 使用: -u http://127.0.0.1')args = parser.parse_args()base_url = args.u.split('n')[0]if args.u:crawl_website(base_url,'/')
04
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……




还没有评论,来说两句吧...