入侵伺服器有哪些基礎知識
學習網路安全的朋友們應該都瞭解過伺服器的相關知識,特別是伺服器入侵,大致有什麼重要內容呢,下面是小編整理的一些關於伺服器入侵的基礎知識資料,供你參考。
入侵伺服器的基礎知識
一、瞭解要入侵的伺服器系統
現在網路上用作伺服器的作業系統以UNIX和Linux為主流,如果要入侵這些系統則必須對它們有一個瞭解。
大部份在 DOS 上使用的指令在 UNIX 及 Linux 上都有對應的指令因為早期的dos開發借鑑了UNIX,以下列出在使用 SHELL帳號 shell account時最主要的一些指令對應的dos指令:
HELP=HELP
CP=COPY
MV= MOVE
LS= DIR
RM =DEL
CD=CD
要看誰同 r也在該系 y上使用者可以鍵入 WHO 指令,要知道系 y上某一位使用者的資料, 可以 I入 FINGER。這些基本的 UNIX 指令可以讓你得到你正使用系 y的資訊。
二、破解密碼
在UNIX作業系統中, 所有系統使用者的密碼都存放在一個檔案中,這個檔案存放在 /etc這個目錄下面, 它的檔名就叫做passwd。如果讀者認為所要做的工作就是拿到這個檔案按照上面的密碼登陸系統的話那就大錯特錯了。UNIX和Linux下的p asswd檔案是特殊的,在它裡面所有帳號的密碼都已經經過重新編譯的也就是前面說過的DES加密方法,而且這些密碼所進行的都是單向編譯 one-way encrypted,也就是說沒有辦法可以反編譯它的decrypt。
但是還是有些程式可以得到這些原始的密碼。筆者向大家推薦一個破解密碼的程式“Cracker Jack”,它也是一個使用字典來對字典檔案進行窮舉的軟體。首先“Cracker Jack”會把字典檔案裡的每一個值進行編譯,然後將編譯過的值與密碼檔案中的內容進行比較,得到相同的結果就會報告對應的未經編譯密碼。這個軟體巧妙的繞過密碼無法反編譯的限制,使用窮舉比較獲得密碼。使用這種原理獲得密碼的工具有許多,讀者可以到網路上去搜尋一下。
三、獲得密碼檔案
這是最困難的一部分。很明顯,如果管理員有那麼一個密碼檔案的話他當然不會放在那裡讓其它人舒舒服服的拿到的。入侵者必須找到好方法以不進入系統的方式拿到密碼檔案。這裡筆者向大家介紹兩種方法,大家可以試試,有可能會成功。
1.tc目錄在FTP服務上不會被鎖住,入侵可以用FTP client程式使用anoymously匿名帳號登陸,然後檢查一下/etc/passwd是否為匿名設定了被讀取的許可權,如果有馬上備份下來使用軟體解碼。
2.些系統中,/cgi-bin目錄下會有個叫PHF的檔案,如果準備入侵的伺服器上有的話那就要方便的多了。因為PHF允許使用者對網站系統裡的檔案作遠端讀取,以此為據,使用者可以使用瀏覽器抓取p asswd檔案,只要在瀏覽器位址列中鍵入 /bin/cat /etc/passwd,其中xxx.xxx.xxx 是要入侵的網站名。
如果這兩種方法都行不通的話,那入侵者必須實施其它的辦法了。
在有些情況下入侵者找到的密碼檔案的第二部分是X、!或者*,那麼說明該密碼檔案已經被鎖死,這是系統管理員使用的加強安全的手段之一。但是將密碼檔案完全隱藏起來的情況是不太有的。通常情況下都會有未經鎖死的密碼檔案備份在系統中,這樣入侵者就可以加以利用,比如:入侵者通常會尋找/ etc/shadow目錄或類似的目錄,看能否找到密碼檔案的備份。
四、建立自己的shell帳號
經過二、三兩個關鍵的步驟入侵者終於拿到了關鍵的密碼檔案,並且破解出了密碼。現在可以執行TELNET程式,登陸主機了。當連上伺服器時伺服器會向你顯示自己的一些資訊,通常是U NIX、linux、 aix、 irix、 ultrix、 bsd 甚至是 DOS 和VAX/Vms;然後是Login提示符出現在螢幕上,這時鍵入得來的帳號和密碼即可登陸系統。此時入侵者就可以利用自己的UNIX知識做自己喜歡做的事了。
最後對一份密碼檔案做一個分析,該檔案內容如下:
nobody:*:12345:12345::/:
daemon:*:1:1::/:
sys:*:2:2::/:/bin/csh
bin:*:3:3::/bin:
uucp:*:4:8::/var/spool/uucppublic:
news:*:6:6::/var/spool/
audit:*:9:9::/etc/security/
sync::1:1::/:/bin/sync
sysdiag:*:0:1:Old System
sundiag:*:0:1:System
::0:0:::
其中以“:”分成幾個欄位,比如:
User Name: tom
Password: 456lll45uu
User No: 100
Group No: 20
Real Name: tom chang
Home Dir: /home/tom
Shell: /bin/csh
讀者可以發現以上諸如nobody、 daemon、 sys、 bin、 uucp、 news、 audit、 sysdiag、sundiag 等的密碼欄位都是*,也就是說這些帳號的密碼都已鎖死,無法直接利用。
值得注意的是,許多系統在首次安裝後會有一些預設帳號和密碼,這給投機主義的黑客帶來方便,以下就是一些UNIX下預設的帳號和密碼。
ACCOUNT PASSWORD
----------- ----------------
root root
sys sys / system / bin
bin sys / bin
mountfsys mountfsys
adm adm
uucp uucp
nuucp anon
anon anon
user user
games games
install install
reboot 供“command login”使用
demo demo
umountfsys umountfsys
sync sync
admin admin
guest guest
daemon daemon
其中 root mountfsys umountfsys install 有 r候 sync也是 等都是root級別的帳號, 也就是擁有了sysop 系統管理員的許可權。
最後有必要介紹一下UNIX的日誌檔案。很多入侵者不希望侵入的電腦追蹤他們,那到底如何做那。
系統管理員主要依靠系統的LOG,即我們時常所說的日誌檔案來獲得入侵的痕跡及入侵者進來的IP和其他資訊。當然也有些管理員使用第三方工具來記錄侵入電腦的資訊,這裡主要講的是一般U NIX系統裡記錄入侵蹤跡的檔案。
UNIX系統有多個版本,各個系統有不同的LOG檔案,但大多數都應該有差不多的存放位置,最普通的位置就是下面的這幾個:
/usr/adm,早期版本的UNIX;
/var/adm,新一點的版本使用這個位置;
/var/log,一些版本的Solaris,Linux BSD,Free BSD使用這個位置;
/etc,大多數UNIX版本把utmp放在此處,一些也把wtmp放在這裡,這也是 syslog.conf的位置。
下面列舉一些檔案的功能,當然他們也根據入侵的系統不同而不同。
acct 或 pacct,記錄每個使用者使用的命令記錄;
access_log,主要使用來伺服器運行了NCSA HTTPD,這個記錄檔案會有什麼站點連線過你的伺服器;
aculog,儲存著你撥出去的MODEMS記錄;
lastlog,記錄了使用者最近的登陸記錄和每個使用者的最初目的地,有時是最後不成功登陸的記錄;
loginlog,記錄一些不正常的登陸記錄;
messages,記錄輸出到系統控制檯的記錄,另外的資訊由syslog來生成;
security,記錄一些使用UUCP系統企圖進入限制範圍的事例;
sulog,記錄使用su命令的記錄;
utmp,記錄當前登入到系統中的所有使用者,這個檔案伴隨著使用者進入和離開系統而不斷變化;
utmpx,UTMP的擴充套件;
wtmp,記錄使用者登入和退出事件;
syslog,最重要的日誌檔案,使用syslogd守護程式來獲得。
日誌資訊:
/dev/log,一個UNIX域套接字,接受在本地機器上執行的程序所產生的訊息;
/dev/klog,一個從UNIX核心接受訊息的裝置;
514埠,一個INTERNET套接字,接受其他機器通過UDP產生的syslog訊息;
Uucp,記錄的UUCP的資訊,可以被本地UUCP活動更新,也可有遠端站點發起的動作修改,資訊包括髮出和接受的呼叫,發出的請求,傳送者,傳送時間和傳送主機;
lpd-errs,處理印表機故障資訊的日誌;
ftp日誌,執行帶-l選項的ftpd能夠獲得記錄功能;
httpd日誌,HTTPD伺服器在日誌中記錄每一個WEB訪問記錄;
history日誌,這個檔案儲存了使用者最近輸入命令的記錄;
vold.log,記錄使用外接媒介時遇到的錯誤記錄。
伺服器原理知識
伺服器是做服務用的,放置在公共網路狀態的環境裡,全球任何一臺連入網際網路的終端機就可以連線到伺服器,與伺服器互動資訊,也可以單方向的從伺服器上獲取資訊,典型的服務就是IIS,伺服器裡安裝IIS服務,就可以將網站的內容放入伺服器裡,使全球的任何人只要開啟這個網站的網址就可以開啟這個網站,瀏覽、下載這個伺服器上的網站資訊。
伺服器功能
• 提供服務- IP 地址
• 將一種資源共享給多個請求者- 資料庫
• 將一種裝置共享給多個請求者- 印表機
• 為其他系統開放閘道器- Web
• 提供處理能力- 數字
• 儲存內容- 資料