攻入Linux系統(tǒng)后,很多入侵者往往就開始得意忘形了。這其中還有一個(gè)原因,就是技術(shù)性也要求更高了。下面,我們來看看一些常用的經(jīng)典工具。
1、從這里延伸:后門和連接工具
(1)Httptunnel
Tunnel的意思是隧道,通常HTTPTunnel被稱之為HTTP暗道,它的原理就是將數(shù)據(jù)偽裝成HTTP的數(shù)據(jù)形式來穿過防火墻,實(shí)際上,它是在HTTP請(qǐng)求中創(chuàng)建了一個(gè)雙向的虛擬數(shù)據(jù)連接來穿透防火墻。說得簡(jiǎn)單點(diǎn),就是說在防火墻兩邊都設(shè)立一個(gè)轉(zhuǎn)換程序,將原來需要發(fā)送或接受的數(shù)據(jù)包封裝成HTTP請(qǐng)求的格式騙過防火墻,所以它不需要?jiǎng)e的代理服務(wù)器而直接穿透防火墻。
HTTPTunnel包括兩個(gè)程序:htc和hts,其中htc是客戶端,而hts是服務(wù)器端,我們現(xiàn)在來看看我是如何用它們的。比如開了FTP的機(jī)器的IP是192.168.10.231,本地機(jī)器IP是192.168.10.226,因?yàn)榉阑饓Φ脑颍镜貦C(jī)器無法連接到FTP上。怎么辦?現(xiàn)在就可以考慮使用HTTPTunnel了。過程如下:
第一步:在本地機(jī)器上啟動(dòng)HTTPTunnel客戶端。用Netstat看一下本機(jī)現(xiàn)在開放的端口,會(huì)發(fā)現(xiàn)8888端口已在偵聽。
第二步:在對(duì)方機(jī)器上啟動(dòng)HTTPTunnel的服務(wù)器端,并執(zhí)行命令“hts -f localhost:21 80”,這個(gè)命令的意思是說,把本機(jī)的21端口發(fā)出去的數(shù)據(jù)全部通過80端口中轉(zhuǎn)一下,并且開放80端口作為偵聽端口,再用Neststat看一下他的機(jī)器,就會(huì)發(fā)現(xiàn)80端口現(xiàn)在也在偵聽狀態(tài)。
第三步:在本地機(jī)器上用FTP連接本機(jī)的8888端口,會(huì)發(fā)現(xiàn)已經(jīng)連上對(duì)方的機(jī)器了。那么,為什么人家看到的是127.0.0.1,而不是192.168.10.231呢?因?yàn)槲覀儸F(xiàn)在是連接本機(jī)的8888端口,防火墻肯定不會(huì)有反應(yīng),如果沒往外發(fā)包,局域網(wǎng)的防火墻肯定就不知道了。現(xiàn)在連接上本機(jī)的8888端口以后,F(xiàn)TP的數(shù)據(jù)包不管是控制信息還是數(shù)據(jù)信息,都被htc偽裝成HTTP數(shù)據(jù)包然后發(fā)過去,在防火墻看來,這都是正常數(shù)據(jù),相當(dāng)于欺騙了防火墻。
需要說明的是,這一招的使用需要其他機(jī)器的配合,就是說要在他的機(jī)器上啟動(dòng)一個(gè)hts,把他所提供的服務(wù),如FTP等重定向到防火墻所允許的80端口上,這樣才可以成功繞過防火墻!肯定有人會(huì)問,如果對(duì)方的機(jī)器上本身就有WWW服務(wù),也就是說他的80端口在偵聽,這么做會(huì)不會(huì)沖突?HTTPTunnel的優(yōu)點(diǎn)就在于,即使他的機(jī)器以前80端口開著,現(xiàn)在也不會(huì)出現(xiàn)什么問題,重定向的隧道服務(wù)將暢通無阻!
(2)Tcp_wrapper
Tcp_wrapper是Wietse Venema開發(fā)的一個(gè)免費(fèi)軟件。Tcp_wrapper的誕生有個(gè)小小的故事,大約1990年,作者所在大學(xué)的服務(wù)器屢屢受到一個(gè)外來黑客侵入,因?yàn)槭芎χ鳈C(jī)的硬盤數(shù)據(jù)屢次被rm -rf/命令整個(gè)抹掉,所以找尋線索極為困難,直到有一天晚上作者在工作的過程中無意中發(fā)現(xiàn)這個(gè)黑客在不斷的finger 受害主機(jī)、偷窺受害者的工作。于是,一個(gè)想法誕生了:設(shè)計(jì)一個(gè)軟件,使它可以截獲發(fā)起finger請(qǐng)求的IP,用戶名等資料。Venema很快投入了工作,而Tcp_wrapper也由此誕生!此后,Tcp_wrapper隨著廣泛的應(yīng)用逐漸成為一種標(biāo)準(zhǔn)的安全工具。通過它,管理員實(shí)現(xiàn)了對(duì)inetd提供的各種服務(wù)進(jìn)行監(jiān)控和過濾。
Tcp_wrapper編譯安裝成功后,會(huì)生成一個(gè)tcpd程序,它可以在inetd.conf這個(gè)控制文件中取代in.telnetd的位置,這樣,每當(dāng)有telnet的連接請(qǐng)求時(shí),tcpd即會(huì)截獲請(qǐng)求,先讀取管理員所設(shè)置的訪問控制文件,合乎要求,則會(huì)把這次連接原封不動(dòng)的轉(zhuǎn)給真正的in.telnetd程序,由in.telnetd完成后續(xù)工作。如果這次連接發(fā)起的ip不符合訪問控制文件中的設(shè)置,則會(huì)中斷連接請(qǐng)求,拒絕提供telnet服務(wù)。Tcp_wrapper訪問控制的實(shí)現(xiàn)是依靠?jī)蓚€(gè)文件:hosts.allow,hosts.deny來實(shí)現(xiàn)的。如果我們編輯/etc/syslog.conf文件時(shí),加入了日志紀(jì)錄功能,即:
#tcp wrapper loglocal3.info /var/log/tcplog |
編輯結(jié)束后,保存文件,在/var/log下會(huì)生成tcplog文件,注意這個(gè)文件的讀寫屬性, 應(yīng)該只對(duì)root有讀寫權(quán)限。然后ps -ef | grep syslogd,找出syslogd的進(jìn)程號(hào),kill -HUP 重啟syslogd進(jìn)程使改動(dòng)生效。 在這里,我們可以預(yù)先看一看以后生成的tcplog文件內(nèi)容,如下:
Jul 31 22:00:52 www.test.org in.telnetd[4365]: connect from 10.68.32.1 Jul 31 22:02:10 www.test.org in.telnetd[4389]: connect from 10.68.32.5 Jul 31 22:04:58 www.test.org in.ftpd[4429]: connect from 10.68.32.3 Aug 2 02:11:07 www.test.org in.rshd[13660]: connect from 10.68.32.5 Aug 2 02:11:07 www.test.org in.rlogind[13659]: connect from 10.68.32.1 |
從上面我們可以看到,在安裝了Tcp_wrapper的主機(jī)上,系統(tǒng)的每一次連接,Tcp_wrapper都做了紀(jì)錄,它的內(nèi)容包括時(shí)間、服務(wù)、狀態(tài)、ip等,對(duì)攻擊這有很大的參考價(jià)值,不過,一定要記得清除日志了。
共3頁(yè): 1 [2] [3] 下一頁(yè) | |||||
|