<span id="7ztzv"></span>
<sub id="7ztzv"></sub>

<span id="7ztzv"></span><form id="7ztzv"></form>

<span id="7ztzv"></span>

        <address id="7ztzv"></address>

            原文地址:http://drops.wooyun.org/tips/421

            0x00 什么是域


            有人說域是一種組織結構,是個安全邊界。域也有另為一個名字,“活動目錄”。不管域是什么,它總有一些特點,有了它,對管理一個機構的組織單元,人員,特別是計算機就方便了許多,特別是計算機,因為域就是建立在計算機上的。加入域里的計算機,共享文件,共享上網就會很方便。

            域里有個比較重要的角色,域控制器(DC)。它有至高無上的權限,它可以在域里對其他計算機(DA)胡作非為。域控制器里還有域內所有用戶的帳號密碼(曾在一個機房的機架上看到一張字條,上面寫著"帳號密碼是黑客攻擊的首要目標",當時偶就笑抽了,機架的鎖上還寫著"這里鎖住的是企業的秘密")。

            綜上所訴,域就是我們在進行滲透測試時,會碰到的一種網絡環境。對域比較直觀的展示時,在登錄3389時,在域里的機器會多一個下拉框,見圖。

            enter image description here

            如果“登錄到”這個下拉框沒有顯示,請點擊“選項(0)”按鈕顯示。仔細看,這個下拉框有兩個選項,一個是此計算機,本地登錄。一個是TESTONE域。再看下圖

            enter image description here

            這個3389登錄界面里的“登錄到”下拉框只有一個選項TESTONE。沒有此計算機的選項。沒錯,這臺機器就是DC,變身成DC的機器本地帳戶會被禁用,所以不能登錄本機,只能登錄到域中(一些書上是這樣說的,偶學藝不精,沒有準確驗證過)。所以DC是偉大的。

            0x01 尋找域控制


            假設我們現在已經在一個域里,當然不是正常的存在。因為我們正在做滲透測試呢,而不是坐在公司里上班打dota。

            一般情況下會有兩種情況,第一:我們能登錄一臺域里服務器的3389。第二:我們用遠程控制軟件控制了一臺域里的個人機器。只要有其中一種,你一定想,并很快擁有另一種。

            好,情況已經這樣美好了,我們下一步該做點什么了,有人說趕緊把毛片和種子下回來,作為一個脫離低級趣味的人來說,我絕對我大聲的對他說,俺硬盤里還有云存儲里的資源比他多的多,極品的多,還費的著下他的,切!

            第一步我覺得不是導hash,而是再給對方種一個或者兩個不同的遠控,留條后路,然后導hash,查看各種信息。導hash的工具gsecdump,wce等,網上都可以下到。

            關于導hash,分為導處本地存儲的hash和正在登錄狀態用戶的hash,正在登錄用戶的hash就有可能導到域管理員的,假設你在一臺域里的服務器上轉悠,這時,剛好管理員用域控管理帳戶來視察這臺服務器,那么內存里就有了他的hash,這時里運行一下工具,hash到手,不要說你破解不出來,沒關系,還有那個法國神器,直接給它顯示明文吧,沒有明文也沒關系,還可以hash注入!

            關于查看些有用的信息,下面引用網上廣為流傳的命令。

            net view?               查看同一域/工作組的計算機列表
            net view /domain?       查看域/工作組列表
            net view /domain:Secwing?    查看Secwing域中 計算機列表
            net group /domain?      查看所在域的組
            net user /domain?       查看所在域用戶
            net user /domain zerosoul 12345678?     修改域用戶密碼,需要域管理員權限,或者Ctrl+Alt+Del點擊修改則不需要域管理員權限
            net localgroup administrators SECWINGzerosoul /add?        域Users組用戶添加到本地Administrators組,需要本地管理員或域管理員在本機登陸域后進行
            

            下面的命令 只能用于 域控制器:

            net group "Domain controllers"?     查看域控制器(如果有多臺)
            net group?                      查看域的組
            net group "domain admins"?      查看域管理員
            net group "domain users"?       查看域管理員
            

            PS:打開配置域控制器向導的命令?

            dcpromo
            
            psexec /accepteula 繞過第一次驗證窗口
            mstsc /admin 遠程桌面登錄到console會話解決hash無法抓出問題
            

            我們查看信息的目的是找出域控制器,網上一般提出過很多方法參考地址

            http://hi.baidu.com/cao2109/item/6f7115687616e5166895e682

            不過偶覺得微軟提供的方法更好用(一個朋友教的,在此感謝)。官方解說:

            http://msdn.microsoft.com/zh-cn/cc755655%28zh-cn,WS.10%29.aspx

            對,就是用dsquery。在2003自帶,system32目錄里。要在xp執行,把dsquery.exe和dsquery.dll拷貝出來放在同目錄就可以用了。dsquery不僅可以找域控制器,在一臺普通域里的機器上就可以運行,列出域里的基本信息,包括組織單元,計算機,用戶,子網,聯系人(說實話,偶不懂這個耶)等。

            找到域控后,很多時候不止一臺域控。現在不管你用什么方法,exp啊,0day啊,hash注入呀,弱口令呀,社工呀,Arp呀,蒼井空啊。弄到域控的權限,有了域管理員的帳號和密碼,那么在域里YY就不愁了。

            0x02 自由飛翔


            假設現在我們拿到了域控管理員的帳號和密碼,我們可以登錄域內一臺服務器,當然域控也沒問題。不過管理會經常登域控,這樣偷情肯定很容易被發現,所以最好找一臺沒有什么作用,被遺棄的服務器上去操作。

            有了帳號密碼,IPC鏈接。內網為了共享啥的方便,server服務都不會關閉,要是我自己電腦server和workstation是肯定要關的。假設我們的域管理員名字是CK,密碼是123456,域的名字叫ALIYUN。我要到域里ip為192.168.4.6的機器上執行命令。我就去會敲出。

            net use 192.168.4.6c$ 123456 /user:ALIYUNCK
            

            要是這個IP其實不在域里,那么把ALIYUN的地方改成192.168.4.6,用戶名改成administrator,然后再試試,可能有驚喜哦。

            要是命令執行成功,執行net use可以看到已經建立的映射。

            然后用psexec來執行命令,第一次運行請記得跳過驗證

            psexec /accepteula 繞過第一次驗證窗口
            

            不然坐在電腦面前的那個她會嚇死的(你要在遠控里的話)。

            建立映射后,在交互式的cmdshell里,比如3389上去打開的cmdshell執行

            Psexec -s 192.168.4.6 cmd.exe
            

            就可以得到一個192.168.4.6機器上的一個cmd.exe.前提是已經net use映射成功了,接下來要干什么,就看你的了。

            這是在交互式的cmdshell里,要是在遠控里自帶的cmdshell呢?一般遠控里的cmdshell會用到管道來實現的,而psexec在回顯的時候或許也用了管道,這樣在執行下面的語句是可能會出現問題。

            Psexec -s 192.168.4.6 cmd.exe /c ipconfig
            

            回顯會出現時有時無的情況,彈一個交互式的cmdshell就不用想了,除非遠控實現的是一個完全交互式的cmdshell,這個東西有嗎?答案是有的。見下面鏈接:

            http://forum.eviloctal.com/thread-40208-1-1.html

            不過有方法可以彌補這個缺陷,net use成功后,在遠控里是可以訪問對方的文件系統的,192.168.4.6C$,這樣就可以寫文件進去,比如寫到C盤,寫批處理,在里面寫想執行的命令并把回顯結果重定向到文件,一次寫入多條效率比較高,還可以重復使用,就像這樣:

            Ipconfig /all >> C:pp.txt
            

            然后再執行

            psexec -s 192.168.4.6 cmd.exe /c C:a.bat
            

            這樣在遠控里把回顯的txt下回來就算行了,還便于保存,是不是很麻煩呀!

            監視管理員:

            雖然拿到域管理員的密碼可以在域里玩,當跟域里有聯系而且重要的機器可能并不在域里,比如幫助域里機器上網的代理服務器,郵件網關等。 要想在這些機器上玩,就只有監視管理員了,找到管理員的機器,給他種個馬,種個keyloger(鍵盤記錄),或者專門的3389登錄記錄器也可以。當然運氣好,可能在他電腦找到一個password.txt就發達了。管理員的瀏覽器也是藏密碼的地方,他應該會經常登錄一些需要密碼驗證的地方,然后他可能會保存密碼,那么我們就要導出他的密碼,那樣會收獲不小哦。

            0x03 問題與提高


            如果你只有遠控,對方網絡在內網。你無法直接登錄服務器上的3389,那就只有端口轉發了。 如果對方內網不能直接上網,只能通過一個代理服務器上網,比如ISA,squid撒的,再加上一個會隨時斷你線的防火墻,那么麻煩就大了。就算一些木馬能出來,一般的端口轉發也出不來啊~。

            這種情況我想到兩種出路:

            一 找到內網里可以直接出來的機器,比如管理員為了方便下片什么的開放的。其實可以直接找管理員。(還有一個思路,看對方內網里發郵件到外面的郵件頭,一般都是郵件中繼信息,一步一步跟就從內網到外網了,要是有基于郵件協議的木馬就爽YY了,中了以后直接劫持郵件客服端,隱蔽的發郵件,控制信息由郵件出去)

            二 寫程序,搞定代理,刺穿防火墻。

            <span id="7ztzv"></span>
            <sub id="7ztzv"></sub>

            <span id="7ztzv"></span><form id="7ztzv"></form>

            <span id="7ztzv"></span>

                  <address id="7ztzv"></address>

                      亚洲欧美在线