滲透測試 網域名稱爆破及埠掃瞄

2021-08-14 01:54:47 字數 3009 閱讀 1467

對每個企業的

web安全都起了至關重要的作用。在

滲透測試

過程中,最先要做的就是資訊收集,子網域名稱爆破就是資訊收集中重要的乙個環節。發現的子網域名稱越多,滲透測試的切入點就越多,也越容易找到**弱點所在。埠掃瞄主要通過對列舉出來的子網域名稱對應的ip位址的掃瞄來確定目標**所用伺服器的系統、所開端口等資訊,進而了解目標**的架構及應用部署情況。

本文使用

python

指令碼,實現了子網域名稱爆破及埠掃瞄的自動化,通過執行python指令碼,可以對目標網域名稱進行子網域名稱列舉,對收集到的子網域名稱所對應的ip位址進行埠掃瞄。下面介紹一下指令碼實現的原理。

指令碼的執行在kali系統下,主要分為三部分,第一部分是對子網域名稱的列舉,第二部分通過對列舉網域名稱所對應的ip進行nmap埠掃瞄,將掃瞄的結果進行xml儲存,第三部分是對xml檔案的解析,將檔案中ip及埠提取出來整理格式後和子網域名稱列舉的結果一起傳送郵件。

以下是指令碼**:

#coding:utf-8

import os,sys,xml.dom.minidom,multiprocessing

from sendmail import *

from time import sleep

def dnsbrute():

try:

domain ='***.com' #指定要進行網域名稱爆破的域

dnsserver ='114.114.114.114' #指定dns伺服器

os.system('rm-rf *.xml')

os.system('dnsenum-f wydomain.csv --noreverse --dnsserver '+str(dnsserver)+' '+str(domain))

while true:

ifos.system('ps -ef |grep dnsenum |grep -v grep') != 0:

iplist=

fori in os.popen('cut -d/ -f 1 '+str(domain)+'_ips.txt'):

break

except exception,e:

print e

return iplist

def nmap_port_scan(i):

try:

cmd = 'nmap -sv--open -n  -pn -ox '+i+'.xml '+i+'1>/dev/null 2>&1'

os.system(cmd)

except exception,e:

print e

def multiprocess_scan(iplist):

try:

filename =

process =

for i in iplist:

for x inprocess:

x.start()

x.join()

except exception,e:

print e

return filename

def port_xml_parser(filename):

try:

total =len(filename)

finished = 0

remainder =len(filename)

print '正在進行nmap掃瞄,請稍等:'

while true:

res =os.system('ps -ef |grep nmap |grep -v grep |grep -v "/dev/null"1>/dev/null 2>&1')

ifres==0:

sleep(1)

status= int(os.popen('ps -ef |grep nmap |grep -v grep |grep -v "/dev/null"|wc -l 1>/dev/null 2>&1'))

ifstatus != remainder:

remainder= status

finished= total - remainder

print'掃瞄進度:'+str(finished)+'/'+str(remainder)+' 請等待.\n'

else:

print '#',

else:

print'掃瞄進度:'+str(total)+'/'+str(total)+' 掃瞄已完成.\n'

break

results = {}

ips =

for i infilename:

ports ={}

dom =xml.dom.minidom.parse(i)

root =dom.documentelement

ifroot.getelementsbytagname('address'):

ip= str(root.getelementsbytagname('address')[0].getattribute("addr"))

port= root.getelementsbytagname('port')

service= root.getelementsbytagname('service')

forj in range(len(port)):

ports[str(port[j].getattribute("portid"))]=str(service[j].getattribute("name"))

ifports!=none:

results[ip]=ports

mail('results','results:'+str(results))

except exception,e:

print e

return results,ips

def run():

port_xml_parser(multiprocess_scan(dnsbrute()))

if __name__ == '__main__':

run()

這個指令碼的意義在於自動化資訊收集過程,給滲透測試人員節省出時間進行更多有針對性的測試。

內網滲透 記一次5900埠弱口令爆破及入侵伺服器

5900埠是遠端控制軟體vnc的預設監聽埠。nmap具體使用方法可以參考 1 將收集到的活著的ip放到乙個txt資料夾中,利用 nmap il ip.txt 進行批量掃瞄埠 或者可以參考 2 使用 nmap pr on home xh shentou out.log 192.168.10.0 24 ...

內網滲透 ssh 22號埠弱密碼爆破

nmap具體使用方法可以參考 1 將收集到的活著的ip放到乙個txt資料夾中,利用 nmap il ip.txt 進行批量掃瞄埠 或者可以參考 2 使用 nmap pr on home xh shentou out.log 192.168.10.0 24 直接 掃瞄乙個網段內所有的ip,掃瞄的結果會...

滲透測試中常見的埠

1,web類 web漏洞 敏感目錄 第三方通用元件漏洞struts thinkphp jboss ganglia zabbix 80 web 80 89 web 8000 9090 web 2,資料庫類 掃瞄弱口令 1433 mssql 1521 oracle 3306 mysql 5432 pos...