1.常規網站后台地址的窮舉猜解
后台登錄地址猜解在這里主要依靠人力和工具結合的方式,人力優先,工具其次。
人力:因為相當比例的網站后台都是像admin,manage,login,,,所以用這一部分先試試看。
工具:這個的話,主要還是看字典,只要字典夠強,用什么工具倒也沒那么重要。可用的工具有:御劍1.5 御劍珍藏版,御劍2.0,pkav破殼掃描器,safe3
需要注意的是,要看工具猜解路徑的運用管理,大部分是根據返回的頭部的代碼(HTTP響應狀態碼response status code),如200,404等,還要注意的一點是有一些奇葩設置網站,所有的路徑都會200成功狀態那種,那這樣搞工具就可能判斷不准確了。
2.開源類程序的后台登錄地址
最經典的就是dede,后台就是/dede。除此之外,還有像Discuz就是admin.php,Joomla就是/administrator,wordpress就是/wp-admin。
國內的CMS通常就是/admin和/manage或者/login,這樣主要還是為了讓管理員登陸起來比較方便。
如果已知這是個什么CMS,但是卻不知道它的后台登陸入口,不妨去它的官網或者一些下載站下載源碼,看看都有哪些路徑。
ps:
1)CMS,即 Content Management System ,英文縮寫是CMS,中文全稱是“網站內容管理系統”。網站內容管理系統具有許多基於模板的優秀設計,可以加快網站開發的速度和減少開發的成本。網站內容管理系統的功能並不只限於文本處理,它也可以處理圖片、Flash動畫、聲像流、圖像甚至電子郵件檔案。網站內容管理系統其實是一個很廣泛的稱呼,從一般的博客程序,新聞發布程序,到綜合性的網站管理程序都可以被稱為內容管理系統。
常見的cms系統:
php類cms系統:dedecms、帝國cms、php168、phpcms、cmstop、discuz、phpwind等
asp類cms系統:zblog、KingCMS等
.net類cms系統:EoyooCMS等
國外的著名cms系統:joomla、WordPress 、magento、drupal 、mambo。
2)dede是織夢內容管理系統dedecms的簡稱,是一個PHP開源網站管理系統,也是使用用戶最多的PHP類CMS系統。
3)判斷cms是dede的方法:1是看網站標簽頁圖像 2是看網站url
3是看網站標簽頁底部有Power by DedeCms字樣
4)如何判斷那是一個開源類程序:網站爬行-->目錄結構 --> 通過經驗判斷
web指紋識別工具:御劍web指紋識別、椰樹1.7
網站版權信息:Power by DedeCms
3.利用搜索引擎查找網站后台地址
我們一般都會將網站放進百度里搜索一下這個站的后台地址。爬蟲並不是窮舉掃描器,只會爬取前台能抓到的路徑,順着爬下去。
當然,搜索引擎還會收錄以前在前台能直接鏈接進去,現在不能鏈接進去的后台地址,針對這種站還是很有效果的。
搜索引擎通常都是使用site語法規定搜索指定站,用inurl來搜索指定關鍵字,或者直接搜一些關鍵字。這些關鍵字都不奏效的話,可以嘗試搜索upload。upfile等關鍵字。比如site:cn inurl:/admin , site:hscjy.com inurl:login hscjy.com是去掉3w的網站域名 login是猜測的網站后台目錄還可以是admin manage member user manager
我們國內的網站,前台的圖片,文件等通常都是后台上傳的,然而就是會有些管理員直接將上傳目錄放在后台目錄里面,如/admin/upload等。
除了這個upload,還有一些網站前台組件也會調用后台的東西,例如前台下載文件時可能會訪問/admin/download.php這樣來設計。比較經典的是織夢dede的前台廣告組件會調用后台地址:
最后要說的就是,Google占據了全球3%的服務器,所以谷歌的搜索結果一定是比百度要強的。
4.二級域名與后台地址
有一些網站會把“后台”入口放置於二級域名。通常是一些需要將登錄入口單獨設置一個登陸地址的站點,如媒體類。媒體類站點前台就是搞媒體,后台地址當然不會輕易讓人家放出來。有些媒體兼職編輯很多,但是又不想讓閑雜人等來網站閑逛,那么設置二級域名就是最好的方法。像一些視頻站,他們的官方資訊也有很多是從二級域名上發布出來的。
要強調的是,猜二級域名和猜二級目錄不同,二級域名通常不會以admin,manage這種來命名,叫什么的都有,如x,edit,news等等
要是碰上這種,還是仁者見仁智者見智了。
就比如網站url:http://www.jianke.com 那他的網站后台地址就不是http://www.jianke.com/admin而是http://askadmin.jianke.com
查找這種網站可以用inurl:admin.*.com
ps:
二級域名(Second Level Domain,SLD)在國際頂級域名或國家頂級域名之下的意義不同。
5.其他端口與后台地址
有的管理員可能會把后台放在別的端口,例如前台默認訪問80端口,后台就是81,82,88,8080,8000,8001等這樣來安排。這種端口分站方式其實最早源於虛擬主機和控制面板的關系,后來被一些程序員管理員給發展為了前台和后台的關系。
通常搞站之前能nmap一下,反正輸入命令掛那讓它跑就行了。
也有的站80端口和其他端口掛兩個不同的站,80下不了手,就去找其他端口的站點的后台好了。
ps:網站搜索語句inurl:admin.*.com:80
6.盲打獲取后台地址
就是用Xss攻擊獲取cookie從而在cookie中獲取后台地址,這需要網站存在Xss存儲型漏洞,無需注入。
不管什么網站,前台總歸是要有交互的地方吧。只要有,哪怕不存在存儲型漏洞,也是有希望的。
當然了,最好還是在前台先插一把試試,萬一連cookie打到了不是更好。如果打不到,也不要灰心,辦法還是有的。
在留言板啊,或者一些管理員需要審核、查看的地方,插張遠程圖片。
前提是這張遠程圖片要在自己控制的服務器或者有高權限的情況下。一旦管理員訪問了這張圖,你在圖片所在服務器上查看日志,看管理員訪問圖片之前來自哪里,即referer標識。
例如從百度訪問了習科,瀏覽器可能就會自動生成並提交給習科服務器你訪問習科之前的baidu的url地址,在習科的服務器日志上,就會在referer這里看到。
7.站點備份文件獲取后台地址
很多站點會有自己整站的文件備份,通常以www、wwwroot、web、webroot等命名,rar,zip,gz,tar.gz,7z等結尾。搞整站備份找入手點也是一種思路,同樣的從備份文件列舉后台路徑也是一種思路。
舉一反三,如果沒有備份,我們可以搜搜這個網站的開發者或建站公司,他建過哪些站,一樣搞了,相信大致結構是差不多,從類似的站點上面找突破點找后台也是不錯的思路。
除此以外,像有些網站有安裝包啊或者下載時候都會自帶一個很蠢的readme.txt,上面會把后台地址,默認密碼、備用密碼都寫上去。
8.站點其他文件獲取后台地址
除了備份文件以外,還有一些非管理員失誤責任在編寫者身上的文件。舉兩個典型:
1,有些程序的編寫者開源后,會帶上一個readme.txt;
2,網站的css或者js文件,網站作者為了方便,可能會將后台的css樣式表、js調用函數等與前台放入同一個文件,看似沒有任何價值的文件,里面也許隱藏着后台的一些功能,間接就可能讓后台地址暴露出來。
還有一些類似的文件,大家自己琢磨。
9.嗅探獲取后台地址
在這里並不提倡同子網其他機器的嗅探。其實asp.net的部分版本支持webshell上的嗅探。
這種嗅探是一種比較猥瑣的方式,但是不得不說對於虛擬主機來說很奏效,容易得到權限,而且權限不需要太高,針對80端口。
10.若是還找不到后台
如果這幾種常用方法行不通,建議就不要在后台上面繼續下工夫,強烈建議從別的地方下手。
小站可以旁注、同子網嗅探等,或者是FTP,數據庫等等,或者干脆搞管理員搞客服,搞控制面板。
有一些獨立的大站可能上面的方法不適用,沒關系,可以用上面的方法搞分站呀,先從二級域名開始找后台,慢慢再向主站靠攏。實在不行,編輯器、編輯器后台、 phpMyAdmin等等,這些都可以下手,暴力phpMyAdmin通常比暴力后台來的實在,還有一些其他可用的擴展,都有可能比在后台上面吊死強。