這兩天看了很多web漏洞掃描器編寫的文章,比如W12scan以及其前身W8scan,還有豬豬俠的自動化攻擊背景下的過去、現在與未來,以及網上很多優秀的掃描器和博客,除了之前寫了一部分的靜湖ABC段掃描器,接下來有空的大部分時間都會用於編寫這個掃描器,相當於是對自己的一個階段性挑戰吧,也算是為了完善自己的技術棧。
因為想把掃描器做成web應用,像W12scan,bugscan,AWVS那樣的,部署好了之后登陸,添加需要掃描的url,自動化進行漏洞掃描,首先需要將掃描器的web界面完成,也就是前后端弄好,漏洞掃描作為后面添加進去的功能,在原基礎上進行修改。
因為時間不是很寬裕,所以選擇Flask框架進行web的開發,學習的視頻是:
https://study.163.com/course/courseMain.htm?courseId=1004091002
找了很久的視頻,要么就是太短了,對於很多地方沒有講透徹,要么就是幾百集的教程丟過來,過於繁雜。
文檔可以看官方文檔,或者是這個:
http://www.pythondoc.com/flask-mega-tutorial/
當然遇到不會的問題還需要谷歌搜索一下,發揮自己的主觀能動性。
接下來慢慢更新這一篇博客,先學Flask,哪里不會點技能樹的哪里吧。當然也不能放棄代碼審計,CTF和網課的學習
2020/4/2更新
框架快搭建好了,先做了登錄界面
然后掃描器的基礎功能也在readme里面寫好了,側重的功能模塊是信息搜集和FUZZ模塊
碎遮 Web漏洞掃描器 環境要求: python版本要求:3.x,python運行需要的類庫在requirements.txt中,執行 pip3 install -r requirements.txt 進行類庫的下載 主要功能: 一,輸入源采集: 1,基於流量清洗 2,基於日志提取 3,基於爬蟲提取 二,輸入源信息搜集(+) 1,被動信息搜集:(公開渠道可獲得信息,與目標系統不產生直接交互) 1,whois 信息 獲取關鍵注冊人的信息 chinaz 2,在線子域名挖掘(這里不會ban掉自身IP,放進被動信息搜集中) 3,繞過CDN查找真實IP 4,DNS信息搜集 5,旁站查詢 6,雲悉指紋 7,備案信息 8,搜索引擎搜索 9,備案查詢 2,主動信息搜集: 1,旁站C段服務簡單掃描 2,子域名爆破 3,CMS指紋識別 4,敏感目錄,文件掃描 5,端口及運行服務 6,服務器及中間件信息 7,WAF檢測 8,敏感信息泄露 .svn,.git 等等 9,登錄界面發現 三,SQL注入漏洞 四,XSS漏洞檢測 五,命令執行類漏洞 六,文件包含類漏洞 七,登錄弱密碼爆破 八,FUZZ模塊 可視化界面: 使用flask+javascript+html+css編寫 啟動index.py,在瀏覽器中訪問127.0.0.1:5000訪問
准備開始模塊的編寫,加油趴
整個項目現在完成了1/3的樣子,因為自己缺乏架構的經驗,所以暫時只能走一步看一步,最開始使用MySQL數據庫准備換成redis非關系型數據庫加快讀寫速度,掃描器在寫的過程中豐富了自己對於各方面知識的掌握
貼上W12scan的代碼架構鎮樓
從架構圖里面跟自己掃描器的想法進行了一些驗證和補充。自己寫的時候應該不會用到elastic,可以考慮使用redis和MySQL數據庫兩個相互進行配合存儲數據。
另外在掃描范圍上要進行合法范圍的擴大化。