**位址如下:
注意: 本文相關教程僅供個人學習使用,切勿用於非法用途,否則造成的相關損失及影響,作者不承擔任何責任林子大了什麼鳥都有。網路發達了,什麼人都有。開源程式也是人開發的,漏洞在所難免。當不正當的人遇到開源程式的漏洞,那就會引發伺服器入侵。
盡可能的避免此類事件的發生。乙個企業或者說乙個網路管理員,需要知道自己提供服務的伺服器上開放著哪些埠,提供著什麼服務。這樣就能在漏洞發生的時候,及時修補,避免不必要的損失。
ok,必要性說完了,我們來說我們怎麼做這件事兒。
需要的環境簡介:
掃瞄器的基本流程圖及簡單的配置介紹如下:
使用如下的**初始化程序池:
from multiprocessing import pool
p = pool(4) # 這裡可以根據機器的效能狀況設定程序池中的程序數
hosts = open(config.host_file)
for host in hosts:
print host
import nmap
nm = nmap.portscanner()
ret = nm.scan(ip,config.scan_port_range,config.scan_options,config.scan_sudo)
其中scan 屬性對應的字典即是掃瞄結果,key 為ip , value 為掃瞄結果,value 中tcp 為對應的tcp 掃瞄條目。
了解結構以後,我們就可以寫遍歷結果**了。
ret = nm.scan(ip,config.scan_port_range,config.scan_options,config.scan_sudo)
scan_host_count = len(ret['scan'].keys())
if scan_host_count != 0:
for ip,result in ret['scan'].items():
tcp_result = result.get('tcp')
for port,detail in tcp_result.items():
gotoneresult(ip,port,detail)
其中gotoneresult 為我們的最終處理結果,接收引數ip,port,detail ,
detail 的情況如下:
result sample : , 'hostnames': , 'vendor': {}, 'addresses': , ' tcp': , 443: }}
def gotoneresult(ip,port,detail):
if detail.get('state') == 'open':
print ip,port,detail
report_file = "reports/port_%d" % (int(port))
open(report_file,"a").write("%s %d %s \n" % (ip,int(port),detail))
最後展示一下掃瞄結果demo 執行配置簡介:專案結構圖如下
使用說明:
**位址如下:Python unittest環境搭建和基礎使用
用python搭建自動化測試框架,需要組織用例以及測試執行,大部分推薦的是unittest。現在搭建python介面框架用的也是這個,隨著了解,也有其他的框架,有時間再多去學習,保持持續學習哦 希望對大家有幫助 unittest是python自帶的單元測試框,可以用來作自動化測試框架的用例組織執行框...
Matlab使用 orth函式 正交基
注意 a orth b a的列數是等於b的秩數,所以,當b缺秩時,a的列就與b的列數不相等了。如 a 1 0 1 1 2 0 0 1 1 r rank a r 3 q orth a q 0.1200 0.8097 0.5744 0.9018 0.1531 0.4042 0.4153 0.5665 0...
eureka使用搭建
一 建工程,引入pom org.springframework.cloud spring cloud starter netflix eureka server 二 配置yml server port 7001 eureka instance hostname localhost eureka服務端...