0x00背景
html
前些日子作了幾天全職掃描工程師,在此作一下最新版AWVS和Nessus破解版在安裝或使用中的踩坑記錄以及AWVS批量腳本的分享。HVV即未來臨,不管是藍隊安全自查,仍是紅隊信息收集,批量漏洞掃描工具確定是必不可少的,但願下面的內容可以給你些許幫助~
python
0x01AWVS破解踩坑
git
最新版AWVS13的破解很簡單,根據壓縮包裏的readme破解便可,但最新版AWVS13的破解仍是延續以前版本的老問題,容易破解失效,因此下面主要仍是說一下遇到以下失效狀況的時候,如何解決:github
AWVS忽然崩了,掃了半天的結果也看不了了:web
從新登陸發現登陸界面不顯示,或者輸入帳號密碼後沒反應:json
此時打開windows的服務管理界面,查看AWVS對應的服務是關閉狀態:windows
因而想着重啓一下服務吧,因而發現死活重啓不起來,就像下面這個樣子:api
這時候若是從新安裝AWVS(重裝大法解決一切問題!),那麼以前掃描的結果都沒有了就很難受了,不要慌,解決辦法來了:此時只須要從新把破解補丁拖取到AWVS安裝目錄安全
而後重啓Acunetix服務後再次從新登陸便可:微信
總結:AWVS13版本在掃描大批量資產的時候很是容易出現各類破解失效,服務自動關停等問題,老是重裝確定是很難受的,因此通過屢次踩坑發現目前大部分問題基本均可以經過上述方法進行從新破解便可。祝你好運
0x02AWVS自動化腳本分享
若是你的破解版AWVS十分給力,未曾出現過破解失效問題,上面的經驗對你毫無做用,那麼但願下面這個腳本可以給你提供些許便利:
腳本說明:某大佬分享的AWVS批量導入腳本,支持:
一、批量導入資產並開始掃描(可配合AWVS定時任務,在任意時間段開始掃描)
二、批量刪除全部任務(會連帶着刪除掃描記錄、漏洞等,慎用!)
三、因爲部分資產較爲脆弱,須要調整掃描速率,因此又在大佬的基礎上添加了一個批量修改掃描速率的模塊。(默認爲fast,需手動修改代碼self.speed值,代碼中已註釋)
四、使用方法很簡單,替換本身的AWVS APIkey便可。
import jsonimport queueimport requestsrequests.packages.urllib3.disable_warnings()def run(): print(' ______ ____ __ __ ') print('/\ _ \ /\ _`\ /\ \__ /\ \ ') print('\ \ \L\ \ __ __ __ __ __ ____ \ \ \L\ \ __ \ \ ,_\ ___\ \ \___ ') print(" \ \ __ \/\ \/\ \/\ \/\ \/\ \ /',__\ \ \ _ <' /'__`\ \ \ \/ /'___\ \ _ `\ ") print(" \ \ \/\ \ \ \_/ \_/ \ \ \_/ |/\__, `\ \ \ \L\ \/\ \L\.\_\ \ \_/\ \__/\ \ \ \ \ ") print(" \ \_\ \_\ \___x___/'\ \___/ \/\____/ \ \____/\ \__/.\_\\ \__\ \____\\ \_\ \_\ ") print(' \/_/\/_/\/__//__/ \/__/ \/___/ \/___/ \/__/\/_/ \/__/\/____/ \/_/\/_/') print(' ______ __ ') print(' /\__ _\ /\ \__ ') print(' \/_/\ \/ ___ ___ _____ ___ _ __\ \ ,_\ ') print(" \ \ \ /' __` __`\/\ '__`\ / __`\/\`'__\ \ \/ ") print(' \_\ \__/\ \/\ \/\ \ \ \L\ \/\ \L\ \ \ \/ \ \ \_ ') print(' /\_____\ \_\ \_\ \_\ \ ,__/\ \____/\ \_\ \ \__\ ') print(' \/_____/\/_/\/_/\/_/\ \ \/ \/___/ \/_/ \/__/') print(' \ \_\ ') print(' \/_/ ') print("\n") print(' Github:https://github.com/BetterDefender/AwvsBatchImport.git') print(' Author:BetterDefender') print(' Version:1.1')class AwvsScan(object):def __init__(self): self.scanner = 'https://127.0.0.1:3443' # Modify URL self.api = '1986ad8c0a5b3df4d7028d5f3c06e936c9c77171759f347dd8426737ab9736f9d' # Modify API self.ScanMode = '11111111-1111-1111-1111-111111111111' # ScanMode self.headers = {'X-Auth': self.api, 'content-type': 'application/json'} self.targets_id = queue.Queue() self.scan_id = queue.Queue() self.site = queue.Queue() self.speed = 'fast' #修改掃描速度爲sequential|slow|moderate|fast便可,默認爲fastdef main(self): print("") print("|"+'=' * 35+"|") print("|Please select the function to use:|") print("""| 1.Add scan task using awvs.txt |\n| 2.Delete all tasks |\n| 3.Regulae all tasks's speed |""") print("|"+'=' * 35+"|") choice = input(">")if choice == '1': self.scans()if choice == '2': self.del_targets()if choice == '3': self.speed_regulate() self.main()def openfile(self):with open('awvs.txt') as cent:for web_site in cent: web_site = web_site.strip('\n\r') self.site.put(web_site)def targets(self): self.openfile()while not self.site.empty(): website = self.site.get()try: data = {'address': website,'description': 'awvs-auto','criticality': '10'} response = requests.post(self.scanner + '/api/v1/targets', data=json.dumps(data), headers=self.headers, verify=False) cent = json.loads(response.content) target_id = cent['target_id'] #獲取任務target_id self.targets_id.put(target_id)except Exception as e: print('Error:Target is not website! {}'.format(website)) print("Please check if the URL in awvs.txt is correct!") exit()def scans(self): self.targets()while not self.targets_id.empty(): data = {'target_id': self.targets_id.get(),'profile_id': self.ScanMode,'schedule': {'disable': False, 'start_date': None, 'time_sensitive': False}} response = requests.post(self.scanner + '/api/v1/scans', data=json.dumps(data), headers=self.headers, allow_redirects=False, verify=False)if response.status_code == 201: cent = response.headers['Location'].replace('/api/v1/scans/', '')#print(cent)def get_targets_id(self): response = requests.get(self.scanner + "/api/v1/targets", headers=self.headers, verify=False) content = json.loads(response.content)for cent in content['targets']: self.targets_id.put([cent['address'], cent['target_id']])def del_targets(self):while True: self.get_targets_id()if self.targets_id.qsize() == 0:breakelse:while not self.targets_id.empty(): targets_info = self.targets_id.get() response = requests.delete(self.scanner + "/api/v1/targets/" + targets_info[1], headers=self.headers, verify=False)if response.status_code == 204: print('delete targets {}'.format(targets_info[0]))def speed_regulate(self):while True: self.get_targets_id()if self.targets_id.qsize() == 0:breakelse:if not self.targets_id.empty():for i in range(self.targets_id.qsize()): targets_info = self.targets_id.get() data = {'scan_speed':self.speed} response = requests.patch(self.scanner + "/api/v1/targets/"+targets_info[1]+'/configuration', data=json.dumps(data), headers=self.headers,verify=False)if response.status_code == 204: print('Regulate targets {}'.format(targets_info[0]))breakif __name__ == '__main__': run() Scan = AwvsScan() Scan.main()
0x03Nessus破解踩坑
https://www.52pojie.cn/thread-1140341-1-1.html
可是在破解中可能會出現一些問題致使沒法破解成功,下面就是一些踩坑記錄,若是你也遇到了,能夠試一試這裏的解決辦法:
1)更新插件遇到以下:
問題不大,使用管理員權限從新打開cmd,運行更新命令便可:
2)若是發現覆蓋配置文件無效時打開目錄發現以下(基本上都是這個問題致使破解失敗):
此時須要將內容複製到inc文件中,但可能會遇到以下狀況:
這個就須要在文件的NTFS權限中添加「Everyone」徹底控制權限:
添加完權限之後只須要將內容複製到inc文件並保存便可:
同時把此plugin_feed_info.inc文件複製到C:\ProgramData\Tenable\Nessus\nessus\plugins目錄後重啓Nessus服務後等待從新初始化便可便可:
出現以下界面,則表示能夠無視IP條數限制開始掃描:
自動化掃描工具下載百度網盤地址:連接: https://pan.baidu.com/s/1b5rhqg7BI8FrXYqZyzsWlQ 密碼: 278m
禁止非法,後果自負
歡迎關注公衆號:web安全工具庫
本文分享自微信公衆號 - web安全工具庫(websec-tools)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。