在DC-5渗透过程中,会使用nmap进行信息收集,以下关于命令描述正确的是? A.nmap-sP网段/24是扫描主机开放端口的命令 B.nmap-sP网段/24是扫描网段存活主机的命令 C.nmap-sVIP地址是扫描网段存活主机的命令 D.nmap-sPP地址是扫描主机开放端口服务的命令
时间: 2024-03-01 11:49:28 浏览: 142
在DC-5渗透过程中,可以使用nmap进行信息收集和端口扫描,以下关于命令的描述正确的是:
B. `nmap -sP 网段/24` 是扫描网段存活主机的命令。
该命令使用nmap的Ping扫描功能,对指定的IP地址范围进行Ping扫描,以确定哪些主机处于活动状态。这个命令通常被用于探测局域网中的存活主机,以便进行后续的端口扫描和漏洞扫描。
其他选项的描述如下:
A. `nmap -sP 网段/24` 是扫描主机开放端口的命令。
这个命令使用的是Ping扫描模式,无法获取主机的端口信息,因此不能用于扫描主机的开放端口。
C. `nmap -sV IP地址` 是扫描单个主机的开放端口和服务版本的命令。
这个命令使用的是版本探测模式,可以获取主机的开放端口和运行的服务的版本号,以便进行后续的漏洞扫描和攻击。
D. `nmap -sP -Pn 地址` 是在Ping扫描时关闭主机发现功能的命令。
这个命令使用的是Ping扫描模式,但是关闭了主机发现功能,通常用于探测对Ping请求不响应的主机。这个命令无法获取主机的开放端口信息。
相关问题
31.使用Nmap进行端口扫描时,如何指定扫描特定的端口?( 1.5分) A.nmap -port 80 target B.nmap -P 80 target C.nmap -ports 80 target D.nmap -p 80 target
正确答案是 D. nmap -p 80 target。在使用 Nmap 进行端口扫描时,可以使用 -p 参数来指定要扫描的端口号。该参数后面可以跟一个端口号或一段端口范围,也可以使用逗号分隔多个端口号。例如,nmap -p 80 target 表示对目标主机进行端口扫描,只扫描 80 端口。如果要扫描多个端口,可以使用类似于 nmap -p 80,443,8080 target 的命令。注意,在指定端口时,需要根据具体的需要和情况进行选择,并遵守法律法规和道德规范,不得进行非法或未授权的端口扫描和攻击。
import re import os import json masscan_path = "D:/0.脚本小子/Tools/masscan/masscan.exe" masscan_parser_path = "../Tools/Masscan-to-CSV/masscan_xml_parser.py" nmap_parser_path = "../Tools/Nmap-Scan-to-CSV/nmap_xml_parser.py" port_list_path = "./dict/ports-http-iamthefrogy.txt" port_list_fp = open(port_list_path, "r") port_list = port_list_fp.readline().strip() port_list_fp.close() # 判断IP是否符合规范 def check_ip(data): ip_pattern = re.compile(r'((2(5[0-5]|[0-4]\d))|[0-1]?\d{1,2})(\.((2(5[0 - 5] | [0 - 4]\d)) | [0 - 1]?\d{1, 2})){3}') result = ip_pattern.match(data) if result is None: return None else: return result.group(0) def filter_ip(): ip_filepath = "./result/ip.txt" # IP数据保存路径 ip_fp = open(ip_filepath, 'r') ip_list = ip_fp.readlines() ip_fp.close() ip_fp = open(ip_filepath, 'w') for ip in ip_list: ip = check_ip(ip) if ip is not None: ip_fp.write(ip + '\n') ip_fp.close() # NMap: csv -> json,提取IP和端口的映射 def read_nmap(data_name): ip2port = {} for item in open("./result/nmap/" + data_name + '.csv'): if item.count(',') > 5: ip = item.strip().split(',')[0] port = item.strip().split(',')[4] if ip != "IP": if ip in ip2port.keys(): ip2port[ip].append(port) else: ip2port[ip] = [port] with open("./result/nmap/" + data_name + '.json', "w") as json_fp: json.dump(ip2port, json_fp) # 执行nmap命令将数据保存为xml与csv格式 def nmap(save_name, need_scan=True): if need_scan: cmd = "nmap -Pn -p {} -oX {} -iL {}".format(port_list, "./result/nmap/" + save_name + ".xml", "./result/ip.txt") os.system(cmd) cmd = "python3 {} -f {} -csv {}".format( nmap_parser_path, "./result/nmap/" + save_name + ".xml", "./result/nmap/" + save_name + ".csv" ) os.system(cmd) read_nmap(save_name) # Masscan: csv -> json,提取IP和端口的映射 def read_masscan(data_name): ip2port = {} for item in open("./result/masscan/" + data_name + '.csv'): if item.count(',') > 5: ip = item.strip().split(',')[0] port = item.strip().split(',')[3] if ip != "IpAddr": if ip in ip2port.keys(): ip2port[ip].append(port) else: ip2port[ip] = [port] with open("./result/masscan/" + data_name + '.json', "w") as json_fp: json.dump(ip2port, json_fp) # 执行masscan命令将数据保存为xml与csv格式 def masscan(save_name, need_scan=True): if need_scan: cmd = "{} -iL {} -Pn -p {} -oX {}".format( masscan_path, "./result/ip.txt", port_list, "./result/masscan/" + save_name + ".xml" ) os.system(cmd) cmd = "python3 {} -f {} -csv {}".format( masscan_parser_path, "./result/masscan/" + save_name + ".xml", "./result/masscan/" + save_name + ".csv" ) os.system(cmd) read_masscan(save_name) # 端口探测主函数 def search_port(conf, filename): filter_ip() if conf['use_nmap']: nmap(filename) if conf['use_masscan']: masscan(filename) if __name__ == '__main__': filter_ip() fp = open("./config.json", "r", encoding="utf-8") conf_json = json.load(fp) config = conf_json['ports'] search_port(config, '2023_1_8')
这段代码在导入 re、os、json 三个模块,并定义了 masscan_path、masscan_parser_path、nmap_parser_path、port_list_path 四个变量。masscan_path 变量定义了 masscan 程序的路径,masscan_parser_path 变量定义了 masscan 的 xml 解析器的路径,nmap_parser_path 变量定义了 nmap 的 xml 解析器的路径,port_list_path 变量定义了端口列表文件的路径。最后,代码打开了端口列表文件,读取了文件中的第一行,并将读取的内容赋值给 port_list 变量。最后关闭了文件。
阅读全文