想必大家都知道MSSQL中SA權限是什麼可以說是至高無上今天我就它的危害再談點兒我所講的是配合NBSI上傳功能得到WebShell在講之前先說幾個條件否則得到Shell是有難度的
.存在SQL注入並且數據庫類型是MSSQL
.連接數據庫的權限必須是SA
.後台必須有文件上傳的程序
好了我們找到一個網址hxxp://wwwxxcom/fangchan/listproasp?id=用NBSI一會就一目了然了
很好數據庫類型是MSSQL權限是SA再看看第三個條件滿足不滿足找到頁面中的文章(新聞)看看裡面的圖片的地址是什麼好!一看就明白了hxxp://wwwxxcom/admin/uploadpic/xxgif你明白了嗎?特別是xxgif 這下我們敢肯定後台有上傳文件的功能了下面做什麼呢?暈找出該網站所在的路徑呀這個嘛就得全靠NBSI的NB Commander(NB Tree_List)功能了(在這裡我推薦大家用NB Commander為什麼呢?看完文章就知道了)不過找出網站所在的真實路徑需要花一定的時間那就看你有沒有耐心了我敢說只要有耐心肯定能找出網站所在的真實路徑這裡我找到了這個站點所在的路徑D:\xx接著就是後台了很快就得到Admin/loginasp接下來就是賬號和密碼的猜解了不過我這次猜解出現了問題說什麼也弄不出他的賬號和密碼難道都是空的?我不相信就試著登錄了一下結果失敗了於是從這開始NB Commander功能就顯得非常重要了(因為大家都知道列目錄NB Command和NB Tree_List都能實現)我找到文件connasp用type D:\xx\admin\loginingasp命令看了看源代碼
夠狠吧!讀了讀代碼沒有問題呀!就是用的admin表字段也一樣不多說了誰能知道其中的原因?請告訴俺一下也讓俺這只菜鳥走出困惑進不了後台怎麼上傳圖片呢?這裡我用NBSI的上傳功能我試過了沒有成功因為我傳上去後看到代碼每行都重復三次也不知是為什麼就是用臭要飯的Getwebshell也是同樣的結果
我想有了看看它的Session是怎麼驗證的又是一個type D:\xx\admin\quanxianasp通過分析很快就明白了它給Session(wsl)賦了一個值為哈哈!我寫了一個非常簡單的程序用NBSI的上傳功能傳了上去我想不管重復幾次都是正確的(這裡你又會想到什麼呢?如果密碼是MD的我們沒有必要去爆破了弄個session就ok了)傳上去保存為asp然後我訪問hxxp://wwwxxcom/admin/asp接著訪問hxxp://wwwxxcom/admin/admin_indexasp就這樣進入了後台本地測試
小提示Session變量和cookies是同一類型的如果某用戶將浏覽器設置為不兼容任何cookie那麼該用戶就無法使用這個Session變量! 當一個用戶訪問某頁面時每個Session變量的運行環境便自動生成這些Session變量可在用戶離開該頁面後仍保留分鐘!(事實上這些變量一直可保留至timeouttimeout的時間長短由Web服務器管理員設定一些站點上的變量僅維持了分鐘一些則為分鐘還有一些則保留至默認值分鐘)所以如果在Session中置入了較大的對象(如ADO recordsetsconnections 等等)那就有麻煩了!隨著站點訪問量的增大服務器將會因此而無法正常運行!
因為創建Session變量有很大的隨意性可隨時調用不需要開發者做精確地處理所以過度使用session變量將會導致代碼不可讀而且不好維護
這樣我找到上傳圖片的地方把asp木馬改成gif傳了上去記住了上傳後的名字這裡是uploadpic\xxgif那麼你會想到什麼呢?哈哈我想起來了把圖片copy成asp的或者重命名成asp的
好了到這裡我們的馬就算是上去了至於以後的事情就不提了
總結SA的確給我們帶來了很大危害所以程序員在連接MSSQL數據庫的時候千萬不能用它否則服務器成為肉雞的可能性非常非常的大還有MSSQL 的擴展存儲功能用不到它就刪除留著就成了黑客的利器
From:http://tw.wingwit.com/Article/program/SQL/201311/16395.html