用python写一个扫描WEB目录的脚本,要求可以同时扫描多个web网址
时间: 2024-05-14 18:13:42 浏览: 17
可以使用Python中的requests库和os库来编写一个简单的WEB目录扫描脚本,具体实现如下:
```python
import requests
import os
# 定义要扫描的目录
dirs = ['admin', 'backup', 'config', 'database', 'test']
# 定义要扫描的WEB网址列表
urls = ['http://www.example.com', 'http://www.test.com']
# 循环遍历目录和网址列表,进行扫描
for url in urls:
print('Scanning ' + url)
for dir in dirs:
# 拼接要扫描的URL
scan_url = url + '/' + dir
try:
# 发送HTTP请求,判断响应状态码是否为200
response = requests.get(scan_url)
if response.status_code == 200:
print('[+] Found directory: ' + scan_url)
except:
pass
```
注意,此脚本仅用于学习和研究用途,请勿用于非法用途。
相关问题
用python帮我写一个web目录扫描脚本,要求,返回值是200时,显示该目录存在,单独输入URL
我是AI语言模型,我无法直接执行脚本,但我可以提供一个基本的Python代码框架,帮助你完成这个任务:
```python
import requests
def scan_directory(url):
# 构造需要扫描的路径列表
paths = ['/admin', '/backup', '/test', ...] # 这里可以根据实际情况添加更多路径
# 遍历路径,发送HTTP请求
for path in paths:
full_url = url + path
response = requests.get(full_url)
if response.status_code == 200:
print(full_url + " exists!") # 如果返回状态码为200,说明目录存在,输出结果
# 测试
url = input("请输入要扫描的URL: ")
scan_directory(url)
```
这个脚本的基本思路是,首先构造需要扫描的路径列表,然后遍历这个列表,向每个路径发送HTTP请求,如果返回状态码为200,说明目录存在,输出结果。你可以根据需要自行修改和优化这个代码框架。
写一个python脚本完成检测靶机漏洞
以下是一个简单的Python脚本,用于检测靶机是否存在常见漏洞:
```python
import nmap
# 创建一个Nmap扫描器对象
scanner = nmap.PortScanner()
# 设置要扫描的主机
target_host = input("请输入要扫描的IP地址: ")
print("正在扫描主机: ", target_host)
# 设置要扫描的端口号
target_ports = input("请输入要扫描的端口号(多个端口号用逗号分隔): ")
# 开始扫描
scanner.scan(target_host, target_ports)
# 检测是否存在常见漏洞
if "445" in target_ports:
print("正在检测 MS17-010 漏洞...")
result = scanner.scan(target_host, "445", arguments="-Pn --script=smb-vuln-ms17-010")
if "VULNERABLE" in result["scan"][target_host]["tcp"][445]["script"]["smb-vuln-ms17-010"]["output"]:
print("主机 %s 存在 MS17-010 漏洞!" % target_host)
else:
print("主机 %s 不存在 MS17-010 漏洞" % target_host)
if "22" in target_ports:
print("正在检测 SSH 弱口令...")
result = scanner.scan(target_host, "22", arguments="-Pn --script=ssh-auth-methods,ssh-brute")
if "pwned" in result["scan"][target_host]["tcp"][22]["script"]["ssh-brute"]["output"]:
print("主机 %s 存在 SSH 弱口令!" % target_host)
else:
print("主机 %s 不存在 SSH 弱口令" % target_host)
if "80" in target_ports:
print("正在检测 Web 应用漏洞...")
result = scanner.scan(target_host, "80", arguments="-Pn --script=http-vuln-*")
if result["scan"][target_host]["tcp"][80]["script"]:
for script in result["scan"][target_host]["tcp"][80]["script"]:
print("主机 %s 存在 Web 应用漏洞:%s" % (target_host, script))
else:
print("主机 %s 不存在 Web 应用漏洞" % target_host)
```
请注意,任何未经授权的扫描都是非法的,应该遵守相关法律和道德规范。上述代码仅供学习和研究之用。