從兩方面回答:
1)如何對客戶要求做出解釋并合理調(diào)整
2)如何提高全端口掃描效率,既保證速度,又保證準(zhǔn)確率。
首先客戶提出提出兩周50w個(gè)ip全端口這個(gè)肯定不現(xiàn)實(shí),所以要考慮跟客戶解釋,有必要對掃描任務(wù)進(jìn)行時(shí)間調(diào)整,安排盡可能多的掃描資源,如掃描機(jī)器,掃描網(wǎng)絡(luò)帶寬等,參考掃描100個(gè)IP端口的平均時(shí)長,估計(jì)掃完的時(shí)間,給出30天時(shí)間左右答復(fù),并且留出一周進(jìn)行后續(xù)補(bǔ)掃,文檔整理等。
使用到多線程、分布式和高并發(fā),采用masscan + nmap,先 masscan存活過一遍,把未存活I(lǐng)P剔除掉;使用分布式nmap高并發(fā)過一遍端口,也可以 massacn 端口掃描過一遍,在nmap 進(jìn)行探測。
提高掃描速度:由于IP數(shù)量過多,不能直接把所有的IP都丟上去掃,時(shí)間肯定不夠可以跟客戶商量減少IP數(shù)量,對未存活的IP進(jìn)行篩選過濾,加快掃描速度需要進(jìn)行參數(shù)微調(diào),如--min-hostgroup、--min-rate和--min-parallelism。對于存在防火墻的情況,可以提出需要提供掃描器
數(shù)據(jù)整理:對于大量的list 和 json使用python-nmap python-masscan,掃描1個(gè)IP處理1個(gè)IP