信息打點(diǎn)-JS架構(gòu)&框架識(shí)別&泄漏提取&API接口枚舉&FUZZ爬蟲&插件項(xiàng)目[1]?
#知識(shí)點(diǎn): 1、業(yè)務(wù)資產(chǎn)-應(yīng)用類型分類 2、Web單域名獲取-接口查詢 3、Web子域名獲取-解析枚舉 4、Web架構(gòu)資產(chǎn)-平臺(tái)指紋識(shí)別 ------------------------------------ 1、開源-CMS指紋識(shí)別源碼獲取方式 2、閉源-習(xí)慣&配置&特性等獲取方式 3、閉源-托管資產(chǎn)平臺(tái)資源搜索監(jiān)控 ------------------------------------ 1、JS前端架構(gòu)-識(shí)別&分析 2、JS前端架構(gòu)-開發(fā)框架分析 3、JS前端架構(gòu)-打包器分析 4、JS前端架構(gòu)-提取&FUZZ 解決: 1、如何從表現(xiàn)中的JS提取價(jià)值信息 2、如何從地址中FUZZ提取未知的JS文件 3、如何從JS開放框架WebPack進(jìn)行測(cè)試 #章節(jié)點(diǎn) Web:語(yǔ)言/CMS/中間件/數(shù)據(jù)庫(kù)/系統(tǒng)/WAF等 系統(tǒng):操作系統(tǒng)/端口服務(wù)/網(wǎng)絡(luò)環(huán)境/防火墻等 應(yīng)用:APP對(duì)象/API接口/微信小程序/PC應(yīng)用等 架構(gòu):CDN/前后端/云應(yīng)用/站庫(kù)分離/OSS資源等 技術(shù):JS爬蟲/敏感掃描/端口掃描/源碼獲取/接口泄漏等 技術(shù):指紋識(shí)別/Github監(jiān)控/CDN繞過/WAF識(shí)別/蜜罐識(shí)別等 #補(bǔ)充: CMS Discuz、WordPress、Ecshop、蟬知等 前端技術(shù) HTML5、jquery、bootstrap、Vue等 開發(fā)語(yǔ)言 PHP、JAVA、Ruby、Python、C#,JS等 Web服務(wù)器 Apache、Nginx、IIS、lighttpd,Apache等 應(yīng)用服務(wù)器: Tomcat、Jboss、Weblogic、Websphere等 數(shù)據(jù)庫(kù)類型: Mysql、SqlServer、Oracle、Redis、MongoDB等 操作系統(tǒng)信息 Linux、windows等 應(yīng)用服務(wù)信息: FTP、SSH、RDP、SMB、SMTP、LDAP、Rsync等 CDN信息 帝聯(lián)、Cloudflare、網(wǎng)宿、七牛云、阿里云等 WAF信息 創(chuàng)宇盾、寶塔、ModSecurity、玄武盾、OpenRASP等。 蜜罐信息: HFish、TeaPot、T-Pot、Glastopf等 其他組件信息 fastjson、shiro、log4j、OA辦公等 |
演示案例:
-
JS前端架構(gòu)-手工搜索分析
1)手工查看網(wǎng)站加載的js文件(由下圖可看出泄露了網(wǎng)站源代碼thinkadmin)主要查看js文件名,看看里面的代碼在做什么樣的事情。
2)ctrl+shift+f (全局搜索)
搜索的內(nèi)容:(所有的目的都是為了找鏈接地址)
??? src=? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#鏈接地址
?? path=? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #路徑
??? method:"get"? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #請(qǐng)求方法
??? http.get("
??? method:"post"
??? http.post("
??? $.ajax
??? http://service.httppost
??? http://service.httpget
-
JS前端架構(gòu)-半自動(dòng)Burp分析
1)burp——find scripts
2)自帶插件?
非自帶插件 如下
-
JS前端架構(gòu)-自動(dòng)化項(xiàng)目分析
findsomething
0、什么是JS滲透測(cè)試?
??? 在Javascript中也存在變量和函數(shù),當(dāng)存在可控變量及函數(shù)調(diào)用即可參數(shù)漏洞,JS開發(fā)的WEB應(yīng)用和PHP,JAVA,NET等區(qū)別在于即沒有源代碼,也可以通過瀏覽器的查看源代碼獲取真實(shí)的點(diǎn)。獲取URL,獲取JS敏感信息,獲取代碼傳參等,所以相當(dāng)于JS開發(fā)的WEB應(yīng)用屬于白盒測(cè)試(默認(rèn)有源碼參考),一般會(huì)在JS中尋找更多的URL地址(即接口地址),在JS代碼邏輯,通過js分析代碼里面的東西(加密算法,APIkey配置,驗(yàn)證邏輯等)進(jìn)行后期安全測(cè)試。
前提:Web應(yīng)用可以采用后端或前端語(yǔ)言開發(fā)
-后端語(yǔ)言:php java python .NET 瀏覽器端看不到真實(shí)的源代碼(識(shí)別CMS后下載源碼分析)
-前端語(yǔ)言:JavaScript(JS)和JS框架 瀏覽器端看到真實(shí)的源代碼
例子:
zblog:核心功能采用PHP語(yǔ)言去傳輸接受
vue.js:核心功能采用框架語(yǔ)法(JS)傳輸接受
總結(jié):php等后端語(yǔ)言開發(fā)的網(wǎng)站,源代碼是看不見的,只能自己去測(cè)。js前端語(yǔ)言開發(fā)的基本上都能在js文件中看到。但并不是說哪一個(gè)更安全更好,主要是網(wǎng)站作用不同,所以要求和兼容性不同,所以選擇也不同。
1、JS安全問題
??? 源碼泄漏
??? 未授權(quán)訪問=JS里面分析更多的URL訪問確定接口路徑
??? 敏感key泄漏=JS文件中可能配置了接口信息(云應(yīng)用,短信,郵件,數(shù)據(jù)庫(kù)等)
??? API接口安全=(代碼中加密提交參數(shù)傳遞,更多的URL路徑)
2、流行的Js框架有那些?
??? Vue NodeJS jQuery Angular等
3、如何判定JS開發(fā)應(yīng)用?
3.1 插件wappalyzer
zblog(由下圖:雖然顯示iQuery庫(kù)但是核心不是js語(yǔ)言 而是PHP 只是少部分用到了js庫(kù))
vue.js 這種就可以看到有許多js文件
??? 源程序代碼簡(jiǎn)短
??? 引入多個(gè)js文件
??? 一般有/static/js/app.js等順序的js文件
??? 一般cookie中有connect.sid
4、如何獲取更多的JS文件?
??? 手工-瀏覽器搜索
??? 半自動(dòng)-Burpsuite插件
??? 工具化-各類提取&FUZZ項(xiàng)目
5、如何快速獲取價(jià)值信息?
??? src=? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#鏈接地址
?? path=? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #路徑
??? method:"get"? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #請(qǐng)求方法
??? http.get("
??? method:"post"
??? http.post("
??? $.ajax
??? http://service.httppost
??? http://service.httpget
#前端架構(gòu)-手工搜索分析
瀏覽器全局搜索分析
#前端架構(gòu)-半自動(dòng)Burp分析
自帶功能:Target->sitemap->Engagement tools->Find scripts
官方插件:JS Link Finder & JS Miner
第三方插件:HaE & Unexpected_information
插件加載器:jython-standalone-2.7.2
Unexpected_information:
https://github.com/ScriptKid-Beta/Unexpected_information
用來標(biāo)記請(qǐng)求包中的一些敏感信息、JS接口和一些特殊字段,
防止我們疏忽了一些數(shù)據(jù)包,使用它可能會(huì)有意外的收獲信息。
HaE:
https://github.com/gh0stkey/HaE
https://raw.githubusercontent.com/gh0stkey/HaE/gh-pages/Config.yml
基于BurpSuite插件JavaAPI開發(fā)的請(qǐng)求高亮標(biāo)記與信息提取的輔助型插件。該插件可以通過自定義正則的方式匹配響應(yīng)報(bào)文或請(qǐng)求報(bào)文,可以自行決定符合該自定義正則匹配的相應(yīng)請(qǐng)求是否需要高亮標(biāo)記、信息提取。
#前端架構(gòu)-自動(dòng)化項(xiàng)目分析
Jsfinder
-從表現(xiàn)中JS中提取URL或者敏感數(shù)據(jù)
https://github.com/Threezh1/JSFinder
一款用作快速在網(wǎng)站的js文件中提取URL,子域名的工具
URLFinder
-從表現(xiàn)中JS中提取URL或者敏感數(shù)據(jù)
https://github.com/pingc0y/URLFinder
一款用于快速提取檢測(cè)頁(yè)面中JS與URL的工具。
功能類似于JSFinder,但JSFinder好久沒更新了。
JSINFO-SCAN
-從表現(xiàn)中JS中提取URL或者敏感數(shù)據(jù)
https://github.com/p1g3/JSINFO-SCAN
遞歸爬取域名(netloc/domain),以及遞歸從JS中獲取信息的工具
FindSomething
-從表現(xiàn)中JS中提取URL或者敏感數(shù)據(jù)
https://github.com/momosecurity/FindSomething
該工具是用于快速在網(wǎng)頁(yè)的html源碼或js代碼中提取一些有趣的信息的瀏覽器插件,
包括請(qǐng)求的資源、接口的url,請(qǐng)求的ip和域名,泄漏的證件號(hào)、手機(jī)號(hào)、郵箱等信息。
ffuf
-FUZZ爆破找到更多的js文件分析更多的信息
https://github.com/ffuf/ffuf
https://wordlists.assetnote.io
功能強(qiáng)大的模糊化工具,用它來FUZZ模糊化js文件。
下載js文件字典 很多js文件命名(爆破方式 找到更多的js文件 有些登錄還會(huì)有其他的js文件)
Packer-Fuzzer
-針對(duì)JS框架開發(fā)打包器Webpack檢測(cè)
https://github.com/rtcatc/Packer-Fuzzer
一款針對(duì)Webpack等前端打包工具所構(gòu)造的網(wǎng)站進(jìn)行快速、高效安全檢測(cè)的掃描工具
實(shí)戰(zhàn)案例
1、插件發(fā)現(xiàn)郵箱、密碼等信息
2、手動(dòng)發(fā)現(xiàn)accesskey
文章來源:http://www.zghlxwxcb.cn/news/detail-836189.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-836189.html
到了這里,關(guān)于web安全學(xué)習(xí)筆記【13】——信息打點(diǎn)(3)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!