新聞中心

EEPW首頁 > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > 網(wǎng)絡(luò)監(jiān)測 如何查看系統(tǒng)記錄以及追蹤入侵者

網(wǎng)絡(luò)監(jiān)測 如何查看系統(tǒng)記錄以及追蹤入侵者

作者: 時(shí)間:2017-06-13 來源:網(wǎng)絡(luò) 收藏

在局域網(wǎng)絡(luò)上可能你聽過所謂“廣播模式”的資料發(fā)送方法,此種方法不指定收信站,只要和此網(wǎng)絡(luò)連結(jié)的所有網(wǎng)絡(luò)設(shè)備皆為收信對象。但是這僅僅在局域網(wǎng)絡(luò)上能夠?qū)嵭?因?yàn)榫钟蚓W(wǎng)絡(luò)上的機(jī)器不多(和Internet比起來 )。如果象是Internet上有數(shù)千萬的主機(jī),本就不可能實(shí)施資料廣播(至于IP Multicast算是一種限定式廣播Restricted Broadcast,唯有被指定的機(jī)器會(huì)收到,Internet上其他電腦還是不會(huì)收到)。假設(shè)Internet上可以實(shí)施非限定廣播,那隨便一個(gè)人發(fā)出廣播 訊息,全世界的電腦皆受其影響,豈不世界大亂?因此,任何局域網(wǎng)絡(luò)內(nèi)的路由器或是類似網(wǎng)絡(luò)設(shè)備都不會(huì)將自己區(qū)域網(wǎng)絡(luò)內(nèi)的廣播訊息轉(zhuǎn)送出去。萬一在WAN Port收到廣播訊息,也不會(huì)轉(zhuǎn)進(jìn)自己的LAN Port中。

  而既然網(wǎng)絡(luò)皆有發(fā)信站與收信站,用以標(biāo)示信息發(fā)送者與信息接收者,除非對方使用一些特殊的封包封裝方式或是使用防火墻對外連線,那么只要有人和你的主機(jī)進(jìn)行通訊(寄信或是telnet、ftp過來都算) 你就應(yīng)該會(huì)知道 對方的位址,如果對方用了防火墻來和你通訊,你最少也能夠知道防火墻的位置。也正因?yàn)橹灰腥撕湍氵B線,你就能知道對方的位址,那么要不要知道對方位置只是要做不做的問題而已。如果對方是透過一臺(tái)UNIX主機(jī)和你連線,則你更可以透過ident查到是誰和你連線的。

  在實(shí)行通訊協(xié)定的電腦上,通常可以用netstat指令來看到目前連線的狀況。

  (各位朋友可以在win95、Novell以及UNIX試試看(注一),在下面的連線狀況中,netstat指令是在win95上實(shí)行的,可以看到目前自己機(jī)器(Local Address處)的telnetport有一臺(tái)主機(jī)workstation.variox.int 由遠(yuǎn)端(Foreign Address處)連線進(jìn)來并且配到1029號tcp port.而cc unix1主機(jī)也以ftpport連到workstation.variox.int去。所有的連線狀況看得一清二楚。(如A、B)

  A.在UNIX主機(jī)(ccunix1.variox.int)看netstat

  B.另一端在Windows95(workstation.variox.int)看netstat, 雖然是不同的作業(yè)系統(tǒng),但netstat是不是長得很像呢?

  通信過程的紀(jì)錄設(shè)定

  當(dāng)然,如果你想要把網(wǎng)絡(luò)連線紀(jì)錄給記錄下來,你可以用cron table定時(shí)去跑:

  netstat>>filename

  但是UNIX系統(tǒng)早已考慮到這一個(gè)需求,因此在系統(tǒng)中有一個(gè)專職記錄系統(tǒng)事件的

  Daemon:syslogd,應(yīng)該有很多朋友都知道在UNIX系統(tǒng)的/var/adm下面有兩個(gè)系統(tǒng)紀(jì)錄檔案:

  syslog與messages,一個(gè)是一般系統(tǒng)的紀(jì)錄,一個(gè)是核心的紀(jì)錄。但是這兩個(gè)檔案是從哪邊來的,又要如何設(shè)定呢?

  系統(tǒng)的紀(jì)錄基本上都是由syslogd (System Kernel Log Daemon)來產(chǎn)生,而syslogd的控制是由/etc/syslog.conf來做的。syslog.conf以兩個(gè)欄位來決定要記錄哪些東西,以及記錄到哪邊去。下面是一個(gè) Linux系統(tǒng)所附上的yslog.conf檔案,這也是一個(gè)最標(biāo)準(zhǔn)的syslog.conf寫法:

  格式就是這樣子,第一欄寫「在什么情況下」以及「什么程度」。然后用TAB鍵跳下一欄繼續(xù)寫「符合條件以后要做什么」。這個(gè)syslog.conf檔案的作者很誠實(shí),告訴你只能用TAB來作各欄位之間的分隔(雖然看來好像他也不知道為什么)。 第一欄包含了何種情況與程度,中間小數(shù)點(diǎn)分隔。另外,星號就代表了某一細(xì)項(xiàng)中的所有選項(xiàng)。詳細(xì)的設(shè)定方式如下:

  1.在什么情況:各種不同的情況以下面的字串來決定。

  auth 關(guān)于系統(tǒng)安全與使用者認(rèn)證方面

  cron 關(guān)于系統(tǒng)自動(dòng)排程執(zhí)行(CronTable)方面

  daemon 關(guān)于背景執(zhí)行程式方面

  kern 關(guān)于系統(tǒng)核心方面

  lpr 關(guān)于印表機(jī)方面

  mail 關(guān)于電子郵件方面

  news 關(guān)于新聞?dòng)懻搮^(qū)方面

  syslog 關(guān)于系統(tǒng)紀(jì)錄本身方面

  user 關(guān)于使用者方面

  uucp 關(guān)于UNIX互拷(UUCP)方面

  上面是大部份的UNIX系統(tǒng)都會(huì)有的情況,而有些UNIX系統(tǒng)可能會(huì)再分出不同的項(xiàng)目出來。

  2.什么程度才記錄:

  下面是各種不同的系統(tǒng)狀況程度,依照輕重緩急排列。

  none 不要記錄這一項(xiàng)

  debug 程式或系統(tǒng)本身除錯(cuò)訊息

  info 一般性資訊

  notice 提醒注意性

  err 發(fā)生錯(cuò)誤

  warning 警告性

  crit 較嚴(yán)重的警告

  alert 再嚴(yán)重一點(diǎn)的警告

  emerg 已經(jīng)非常嚴(yán)重了

  同樣地,各種UNIX系統(tǒng)可能會(huì)有不同的程度表示方式。有些系統(tǒng)是不另外區(qū)分crit與alert的差別,也有的系統(tǒng)會(huì)有更多種類的程度變化。在記錄時(shí),syslogd 會(huì)自動(dòng)將你所設(shè)定程度以及其上的都一并記錄下來。例如你要系統(tǒng)去記錄 info等級的事件,則notice、err.warning、crit、alert、emerg等在info等級以上的也會(huì)一并被記錄下來。 把上面所寫的1、2項(xiàng)以小數(shù)點(diǎn)組合起來就是完整的「要記錄哪些東西」的寫法。

  例如 mail.info表示關(guān)于電子郵件傳送系統(tǒng)的一般性訊息。auth.emerg就是關(guān)于系統(tǒng)安全方面相當(dāng)嚴(yán)重的訊息。 lpr.none表示不要記錄關(guān)于列表機(jī)的訊息(通常用在有多個(gè)紀(jì)錄條件時(shí)組合使用)。另外有三種特殊的符號可供應(yīng)用:

  1.星號(*) 星號代表某一細(xì)項(xiàng)中所有項(xiàng)目。例如mail.*表示只要有關(guān)mail的,不管什么程度都要記錄下來。而*.info會(huì)把所有程度為info的事件給記錄下來。

  2.等號(=)等號表示只記錄目前這一等級,其上的等級不要記錄。例如剛剛的例子,平常寫下info等級時(shí),也會(huì)把位于info等級上面的notice、err.warning、crit、alert、emerg等其他等級也記錄下來。但若你寫=info則就只有記錄info這一等級了。

  3.驚嘆號(!) 驚嘆號表示不要記錄目前這一等級以及其上的等級。

本文引用地址:http://butianyuan.cn/article/201706/354891.htm

記錄到哪邊去?

  一般的syslogd都提供下列的管道以供您記錄系統(tǒng)發(fā)生的什么事:

  1.一般檔案

  這是最普遍的方式。你可以指定好檔案路徑與檔案名稱,但是必須以目錄符號「/」開始,系統(tǒng)才會(huì)知道這是 一個(gè)檔案。例如/var/adm/maillog表示要記錄到/var/adm下面一個(gè)稱為maillog的檔案。如果之前沒有這個(gè)檔案 ,系統(tǒng)會(huì)自動(dòng)產(chǎn)生一個(gè)。

  2.指定的終端機(jī)或其他設(shè)備

  你也可以將系統(tǒng)紀(jì)錄寫到一個(gè)終端機(jī)或是設(shè)備上。若將系統(tǒng)紀(jì)錄寫到終端機(jī),則目前正在使用該終端機(jī)的使 用者就會(huì)直接在螢?zāi)簧峡吹较到y(tǒng)訊息(例如/dev/console或是/dev/tty1.你可以拿一個(gè)螢?zāi)粚iT來顯示系統(tǒng)訊息 )。若將系統(tǒng)紀(jì)錄寫到印表機(jī),則你會(huì)有一長條印滿系統(tǒng)紀(jì)錄的紙(例如/dev/lp0)。

  3.指定的使用者

  你也可以在這邊列出一串使用者名稱,則這些使用者如果正好上線的話,就會(huì)在他的終端機(jī)上看到系統(tǒng)訊息( 例如root,注意寫的時(shí)候在使用者名稱前面不要再加上其他的字)。

  4.指定的遠(yuǎn)端主機(jī)

  這種寫法不將系統(tǒng)訊息記錄在連接本地機(jī)器上,而記錄在其他主機(jī)上。有些情況系統(tǒng)碰到的是硬碟錯(cuò)誤,或是萬一有人把主機(jī)推倒,硬碟摔壞了,那你要到哪邊去拿系統(tǒng)紀(jì)錄來看呢?而網(wǎng)絡(luò)卡只要你不把它折斷,應(yīng)該是比硬碟機(jī)耐摔得多了。因此,如果你覺得某些情況下可能紀(jì)錄沒辦法存進(jìn)硬碟里,你可以把系統(tǒng)紀(jì)錄丟到其他的主機(jī)上。如果你要這樣做,你可以寫下主機(jī)名稱,然后在主機(jī)名稱前面加上「@」符號(例如@ccunix1.variox.int,但被你指定的主機(jī)上必須要有syslogd)。

  在以上各種紀(jì)錄方式中,都沒有電子郵件這項(xiàng)。因?yàn)殡娮有偶仁占呷ナ招挪趴吹玫剑?有些情況可能是很緊急的, 沒辦法等你去拿信來看(BSD的Manual Page寫著「when you got mail,it’s already too late...」 :-P)。以上就是syslog各項(xiàng)紀(jì)錄程度以及紀(jì)錄方式的寫法,各位讀者可以依照自己的需求記錄下自己所需要的內(nèi)容。但是這些紀(jì)錄都是一直堆上去的,除非您將檔案自行刪除掉,否則這些檔案就會(huì)越來越大。有的人可能會(huì)在syslogd.conf里面寫:*.*/var/log/everything要是這樣的話,當(dāng)然所有的情況都被你記錄下來了。但是如果真的系統(tǒng)出事了,你可能要從好幾十MB甚至幾百M(fèi)B的文字中找出到底是哪邊出問題,這樣可能對你一點(diǎn)幫助都沒有。因此,以下兩點(diǎn)可以幫助你快速找到重要的紀(jì)錄內(nèi)容:

  1.定期檢查紀(jì)錄

  養(yǎng)成每周(或是更短的時(shí)間,如果你有空的話)看一次紀(jì)錄檔的習(xí)慣。如果有需要將舊的紀(jì)錄檔備份,可以 cploglog.1,cploglog.2...或是cploglog.971013,cploglog.980101...等,將過期的紀(jì)錄檔依照流水號或是日期存起來,未來考察時(shí)也比較容易。

  2.只記錄有用的東西

  千萬不要像前面的例子一樣,記錄下*.*。然后放在一個(gè)檔案中。這樣的結(jié)果會(huì)導(dǎo)致檔案太大,要找資料時(shí)根本無法馬上找出來。有人在記錄網(wǎng)絡(luò)通訊時(shí),連誰去ping他的主機(jī)都記錄。除非是系統(tǒng)已經(jīng)遭到很大的威脅,沒事就有人喜歡嘗試進(jìn)入你的系統(tǒng),否則這種雞毛蒜皮的小事可以不用記錄。可以提升些許系統(tǒng)效率以及降低硬盤使用量(當(dāng)然也節(jié)省你的時(shí)間)。

  地理位置的追蹤

  如何查出入侵者的地理位置?光看IP地址可能看不出來,但是你??吹脑?,會(huì)發(fā)現(xiàn)也會(huì)發(fā)現(xiàn)規(guī)律的。在固接式的網(wǎng)絡(luò)環(huán)境中,入侵者一定和網(wǎng)絡(luò)提供單位有著密切的關(guān)系。因?yàn)榧僭O(shè)是局域網(wǎng)絡(luò),那么距離絕對不出幾公里。就算是撥接好了,也很少人會(huì)花大筆錢去撥外縣市甚至國外的撥接伺服器。因此,只要查出線的單位,入侵者必然離連線單位不遠(yuǎn)。

  撥接式的網(wǎng)絡(luò)就比較令人頭疼了。有許多ISP為了吸引客戶,弄了很多什么網(wǎng)絡(luò)卡。

  User這邊只要買了固定的小時(shí)數(shù),不需須另外向ISP那邊提出申請,就可以按照卡片上的說明自行撥接上網(wǎng)。這樣當(dāng)然可以吸引客戶,但是ISP就根本無從得知是誰在用他們的網(wǎng)路。也就是說,雖然以網(wǎng)絡(luò)卡提供撥接服務(wù)給撥接使用者帶來相當(dāng)大的便利,但卻是系統(tǒng)安全的大敵,網(wǎng)絡(luò)管理員的惡夢。如果入侵你的人是使用網(wǎng)絡(luò)卡來上網(wǎng),那……,要從撥號的地點(diǎn)查嗎?入侵者可以不要用自己家里的電話上網(wǎng)。管它是偷是搶,或是盜打王八機(jī),反正查到的發(fā)話來源絕不是入侵者自己的電話。


來話者ID偵測(Caller ID)

  各位讀者家中有ISDN嗎?如果你用過ISDN的Caller ID功能,會(huì)發(fā)現(xiàn)真是方便極了,對方的號碼馬上就顯示出來給你看??吹脚笥汛螂娫拋?,馬上就接了起來;而雜志社的打來催稿,就打開電話答錄機(jī)假裝不在家…… :-P.但是Caller ID依然有失效的時(shí)候。有以下測試,是看CallerID可以顯示出哪些號碼的(受測機(jī)種為Zyxel,終端機(jī)使用Windows NT的Hyper Terminal):要顯示來話方號碼的前提是,對必須是透過數(shù)位交換機(jī)打到你這邊,有些地區(qū)目前仍然使用機(jī)械式交換機(jī),如果你打電話的交換路徑中,有經(jīng)過這些機(jī)械式的交換機(jī),那么依然無法顯示出號碼來。其他電話還沒有做測試。

  如何靠IP地址或Domain Name找出入侵者位置?

  雖然電話不一定查得出來,但是至少你會(huì)知道他的IP地址。IP地址的使用必須向InterNIC登記,而Domain Name要向當(dāng)?shù)刂睂俚木W(wǎng)絡(luò)管理中心登記。在Internet上的網(wǎng)路管理中心共有三個(gè)層級(單位性質(zhì)一定為NET):

  1.國際等級

  國際等級只有InterNIC一個(gè),全球各國的NIC以及洲際NIC均由其管理。

  2.洲際等級

  InterNIC并不直接管理整個(gè)Internet,其下的網(wǎng)絡(luò)資源會(huì)再做分區(qū)。例如臺(tái)灣、日本、香港等亞太地區(qū)國家 ,由亞太洲際網(wǎng)絡(luò)管理中心(Asian-PacificNIC,APNIC,位于日本)來管理,并不直接由InterNIC管理 。

  3.國家等級

  Domain Name后面不掛國碼的不是由InterNIC管理就是由洲際的NIC管理,但是有掛國碼的由當(dāng)?shù)貒抑甆IC管理,慣例是兩位國碼加上NIC就是該國NIC之名稱。例如中國的國碼為CN,則中國網(wǎng)絡(luò)管理中心為CNNIC,但由于InterNIC位于美國,因此美國的DomainName由InterNIC直轄。有一個(gè)特別的例外是掛.mil的美國軍方網(wǎng)絡(luò)的資料是由ddn.mil(美國軍事防衛(wèi)網(wǎng)絡(luò))來管理,不由InterNIC管理,當(dāng)您得到某個(gè)Domain Name或是IP地址后,可以使用whois來查出資料,語法如下:

  whois -h查詢對象>

  例如向whois.internic.net查詢hp.com,需輸入:

  whois -h whois.internic.nethp.com whois

  也可能使用下列語法:

  whois 查詢對象>@

  例如向whois.twnic.net查詢ntu.edu.tw需輸入:

  whois ntu.edu.tw@whois.twnic.net

  目前在Slackware Linux附上的為后者。

  Domain Name命名的三種情況

  雖然同樣是 Domain Name,可能你會(huì)遇到三種命名的不同情況。在許多國家*.edu.*是由NIC以外的單位所管理( 如育部),而屬性也不一定是三個(gè)字母,甚至沒有屬性。在判斷單位性質(zhì)時(shí)讀者宜多加注意,以免找不到資料。

  1.標(biāo)準(zhǔn)國碼+三碼屬性碼(或沒有國碼,僅有屬性碼)

  普遍使用于歐洲,美洲國家以及部份東南亞國家。如臺(tái)灣常見*.edu.tw、*.com.tw,美國的*.com、*.edu。

  2.標(biāo)準(zhǔn)國碼+二碼屬性碼

  以日本例,公司屬性為co,社團(tuán)屬性為or,和三碼定義的com、org略有不同。如日本萬代公司之Homepage 為www.bandai.co.jp,如果讀者要使用公司名稱拼湊出完整主機(jī)名稱時(shí),需注意日本為僅有兩碼屬性碼之地區(qū),否則若猜測其為www.bandai.com.jp就會(huì)發(fā)生錯(cuò)誤(注:在國際通信范例中,無論是無線電通信、國際越洋電 話、乃至于網(wǎng)際網(wǎng)絡(luò)等,均將臺(tái)灣與中國大陸劃分為兩個(gè)不同國家。在此將中國大陸與臺(tái)灣區(qū)分,除突顯此一 特性外,并無其他涵義,請大家勿需自行揣測其他意義)。

  3.僅有標(biāo)準(zhǔn)國碼,未有任何屬性碼

  如澳洲的主機(jī)均為僅有*.au之主機(jī)名稱,未有任何其他的com、co、或任何單位屬性碼后面直接接上單位名稱。

  由Domain Name查出連線單位資料

  在Internet上慣例由whois服務(wù)來查詢連線單位的登記資料,whois本來應(yīng)該是用來查某人的電話或是其他資料的,但是在NIC方面是用來查出連線單位的電話以及住址,技術(shù)聯(lián)絡(luò)人等。符合該NIC管理權(quán)限的單位資料會(huì)存放于該單位的whois主機(jī)中,慣例是whois+NIC名稱+net。例如亞太地區(qū)網(wǎng)絡(luò)管理中心whois server為whois.apnic.net,臺(tái)灣網(wǎng)絡(luò)中心whois server為whois.twnic.net,我過網(wǎng)絡(luò)中心whois server是whois.cnnic.net。當(dāng)你知道某臺(tái)主機(jī)的Domain Name以后,可以依照下面順序查出連線單位的電話住址等資料。

  第一步,先看有沒有國碼。

  沒有國碼的,向whois.internic.net問;有國碼的,向whois.國碼nic.net問

  (ex.whois.twnic.net)。

  另外,如果你要查美國軍事單位的聯(lián)絡(luò)明細(xì)(假如某天你發(fā)現(xiàn)有人利用美國海軍的網(wǎng)絡(luò)來入侵你的電腦)則你需要向nic.ddn.mil查詢,方可查到資料。例如查出美國陸軍的資料:但FBI等調(diào)查機(jī)構(gòu)屬政府單位,非軍事單位,查詢時(shí)需注意:由DomainName查出資料,如您能從nslookup查出某一IP地址之FQDN,則可以直接向當(dāng)?shù)豊IC查出入侵者網(wǎng)絡(luò)之資料:

  1.由美國入侵的例子:

  由 xxx.aol.com入侵由主機(jī)名稱發(fā)現(xiàn)未有國碼, 因此直接向InterNIC查詢。由此我們可以查到America Online的技術(shù)負(fù)責(zé)人以及電話、傳真等資料,把你的系統(tǒng)紀(jì)錄檔準(zhǔn)備好,發(fā)封傳真去告洋狀吧!

  2.由臺(tái)灣入侵的例子:

  由HopeNet入侵(cded1.hope.com.tw)由于TWNIC目前whois資料庫不知怎么的不見了,故請改由dbms.seed.net.tw查出hope.com.tw之中文名稱,再打104詢問該公司的電話!現(xiàn)在如果直接由whois.twnic.net 查詢會(huì)這樣:

只有IP地址的查法

  若某天您發(fā)現(xiàn)由168.95.109.222有人入侵,假設(shè)您不知道這是哪里的網(wǎng)絡(luò),而這個(gè)IP地址也沒有Domain Name 的話,則須先將IP地址分等級,再向InterNIC查詢:

  1.由15.4.75.2入侵的例子:

  此IP地址是15開頭,為一個(gè)ClassA網(wǎng)絡(luò),故向InterNIC查詢15.0:查出此IP地址為惠普公司所有

  2.由140.111.32.53入侵的例子:

  此IP地址為ClassB,需查詢兩次。先向InterNIC查詢140.111.0:查出為臺(tái)灣教育部所有。再向 whois.twnic.net查詢140.111.32.0:

  3.由203.66.35.1入侵的例子

  這是一個(gè)ClassCIP,因此必須查詢至少二次,一般是三次。順序?yàn)閲H->洲際->所屬國家。先查203.0:出來一大堆,怎么辦?有的情況只好再追問ClassB。由于InterNIC將部份ClassC交給洲際管理機(jī)構(gòu)來負(fù)責(zé)配給,因此有些ClassC的資料會(huì)在洲際管理機(jī)構(gòu),此時(shí)先向InterNIC查出所屬洲際管理機(jī)構(gòu)(用ClassB問)。問到 203.66為亞太地區(qū)洲際網(wǎng)絡(luò),于是向whois.apnic.net詢問203.66.35.0:查了三次以后,終于查到203.66.35.0 為:

  在一堆資料中查到203.66.35.1,此一IP地址為ForwardnessTechnologyCo.Ltd.所有,電話地址也一并附在上面。

  由以上的查法,可以由任一主機(jī)名稱或IP地址查到連線者網(wǎng)絡(luò)單位的資料,如果您發(fā)現(xiàn)該網(wǎng)絡(luò)單位下屬主機(jī)對您的網(wǎng)絡(luò)有攻擊行為,請檢具資料告訴對方的系統(tǒng)管理員(對方不一定接受)。下面是Windows95的hosts檔案:當(dāng)您沒有DNS的時(shí)候,您可以拿這個(gè)來將DomainName->IP地址的對應(yīng)工作做好。寫法就和UNIX一樣。Microsoft的這個(gè)hosts檔案寫的是給chicago用的,這是windows95的開發(fā)代號,看見沒?(看來Microsoft出windows95時(shí)太趕,忘了修正這些小東西), 不過各位讀者要注意的是,原先的hosts檔案檔名是hosts.sam,您要自己將檔名改成hosts才能用。

  注:幾乎所有使用通訊協(xié)定的機(jī)器都會(huì)有hosts、network等檔案。這是所有系統(tǒng)的共通習(xí)慣(但只有 Microsoft的軟體會(huì)有l(wèi)mhosts來配合Microsoft自己的wins域名解譯系統(tǒng))。如果讀者有注意到的話,可以發(fā)現(xiàn) Novell Netware服務(wù)器也有一個(gè)etc目錄,還有hosts等檔案!




關(guān)鍵詞: TCP/IP Telnet FTP

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉