導航:首頁 > 解決方法 > linux入侵檢測方法

linux入侵檢測方法

發布時間:2023-05-21 23:40:40

① libnids 入侵檢測

一個基於Libnids入侵檢測程序~有人成功測試過嗎~

#include "stdio.h"
#include "string.h"
#include "nids.h"
/*檢測掃描用的的掃描信息數據結構*/
struct scan
{
u_int addr; /*地址*/
unsigned short port; /*埠號*/
u_char flags; /*標記*/
};
/*下面是檢測掃描時用到的掃描主機數據結構*/
struct host
{
struct host* next; /*下一個主機結點*/
struct host* prev; /*前一個主機結點*/
u_int addr; /*地址*/
int modtime; /*時間*/
int n_packets; /*個數*/
struct scan* packets; /*掃描信息*/
};
/*下面是IP協議首部和數據結構氏咐*/
struct ip_header
{
#if defined(WORDS_BIGENDIAN)
unsigned ing ip_v : 4,
ip_hl : 4;
#else
unsigned int ip_hl : 4,
ip_v : 4;
#endif
unsigned int ip_tos;
unsigned char ip_len;
unsigned char ip_id;
unsigned char ip_off;
unsigned int ip_ttl;
unsigned int ip_p;
unsigned char ip_csum;
struct in_addr ip_src;
struct in_addr ip_dst;
};
/*下面是TCP協議首稿兄部的數據結構*/
struct tcp_header
{
unsigned char th_sport; /*源埠號殲敬純*/
unsigned char th_dport; /*目的埠號*/
unsigned short th_seq; /*序列號*/
unsigned short th_ack; /*確認號*/
#ifdef WORDS_BIGENDIAN
unsigned int th_off : 4, /*數據偏移*/
th_x2 : 4; /*保留*/
#else
unsigned int th_x2 : 4, /*保留*/
th_off : 4; /*數據偏移*/
#endif
unsigned int th_flags;
unsigned char th_win; /*窗口大小*/
unsigned char th_sum; /*校驗和*/
unsigned char th_urp; /*緊急指針*/
};
char *nids_warnings[] = {"Murphy - you never should see this message !"};

/*下面是檢測掃描攻擊和異常數據包的函數*/
static void my_nids_syslog(int type, int errnum, struct ip_header *iph, void *data)
{
static int scan_number = 0;
char source_ip[20];
char destination_ip[20];
char string_content[1024];
struct host* host_information;
unsigned char flagsand = 255,flagsor = 0;
int i;
char content[1024];
printf("ff");
switch (type) /*檢測類型*/
{
case NIDS_WARN_IP:
if (errnum !=NIDS_WARN_IP_HDR)
{
strcpy(source_ip, inet_ntoa(*((struct in_addr *) &(iph->ip_src.s_addr))));
strcpy(destination_ip, inet_ntoa(*((struct in_addr *) &(iph->ip_dst.s_addr))));
printf("%s,packet(apparently from %s to %s\n", nids_warnings[errnum],source_ip, destination_ip);
}
else
{
printf("%s\n", nids_warnings[errnum]);
break;
}
case NIDS_WARN_TCP:
strcpy(source_ip, inet_ntoa(*((struct in_addr *) &(iph->ip_src.s_addr))));
strcpy(destination_ip, inet_ntoa(*((struct in_addr *) &(iph->ip_dst.s_addr))));
if (errnum != NIDS_WARN_TCP_HDR)
{
printf("%s,from %s:%hi to %s:%hi\n", nids_warnings[errnum], source_ip, ntohs(((struct tcp_header *) data)->th_sport), destination_ip, ntohs(((struct tcp_header *) data)->th_dport));
}
else
{
printf("%s,from %s to %s\n", nids_warnings[errnum], source_ip, destination_ip);
}
break;
case NIDS_WARN_SCAN:
scan_number++;
sprintf(string_content, "------------- %d -------------\n", scan_number);
printf("%s", string_content);
printf("----- 發現掃描攻擊 -----\n");
host_information = (struct host *) data;
sprintf(string_content, "掃描者的IP地址為:\n");
printf("%s", string_content);
sprintf(string_content, "%s\n", inet_ntoa(*((struct in_addr *) &(host_information->addr))));
printf("%s", string_content);
sprintf(string_content, "被掃描者的IP地址和埠號為:\n");
printf("%s", string_content);
sprintf(string_content, "");
for(i = 0; i < host_information->n_packets; i++)
{
strcat(string_content, inet_ntoa(*((struct in_addr *) &(host_information->packets.addr))));
sprintf(string_content + strlen(string_content), ":%hi\n", host_information->packets.port);
flagsand &= host_information->packets.flags;
flagsor |= host_information->packets.flags;
}
printf("%s", string_content);
sprintf(string_content, "");
if (flagsand == flagsor)
{
i = flagsand;
switch (flagsand)
{
case 2:
strcat(string_content, "掃描類型為: SYN\n");
break;
case 0:
strcat(string_content, "掃描類型為: NULL\n");
break;
case 1:
strcat(string_content, "掃描類型為: FIN\n");
break;
default:
sprintf(string_content + strlen(string_content), "標志=0x%x\n", i);
}
}
else
{
strcat(string_content, "標志異常\n");
}
printf("%s", string_content);
break;
default:
sprintf(content, "未知");
printf("%s", string_content);
break;
}
}
/*主函數*/
void main()
{
struct nids_prm nids_params;
nids_params.syslog = my_nids_syslog; /*注冊檢測攻擊的函數*/
nids_params.pcap_filter = "ip";
if (!nids_init()) /*Libnids初始化*/
{
printf("出現錯誤: %s\n", nids_errbuf);
exit(1);
}
nids_run(); /*進入循環捕獲數據包的狀態*/
}

如何在 Linux 系統上安裝 Suricata 入侵檢測系統

由於安全威脅持續不斷,配備入侵檢測系薯唯褲統(IDS)已成為如今數據中心環境下最重要的要求之一。然而,隨著越來越多的伺服器將網卡升級到10GB/40GB乙太網技術,我們越來越難在大眾化硬體上以線速實施計算密集型入侵檢測。擴展IDS性能的一個方法就是使用多線程IDS。在這種IDS下,大量耗用CPU資源的深度數據包檢查工作負載並行化處理,分成多個並發任務。這種並行化檢查機制可以充分發揚多核硬體的優勢,輕松擴展IDS的處理能力。這方面的兩個知名的開源工具就是Suricata(http://suricata-ids.org)和Bro(https://www.bro.org)。
我在本教程中將演示如何在Linux伺服器上安裝和配置Suricata IDS。
在Linux上安裝Suricata IDS
不妨用源代碼構建Suricata。你先要安裝幾個所需的依賴項,如下所示。
在Debian、Ubuntu或Linux Mint上安裝依賴項
$ sudo apt-get install wget build-essential libpcre3-dev libpcre3-dbg automake autoconf libtool libpcap-dev libnet1-dev libyaml-dev zlib1g-dev libcap-ng-dev libjansson-dev

在CentOS、Fedora或RHEL上安裝依賴項
$ sudo yum install wget libpcap-devel libnet-devel pcre-devel gcc-c++ automake autoconf libtool make libyaml-devel zlib-devel file-devel jansson-devel nss-devel

一旦你安裝了所有必需的程序包,現在可以安裝Suricata了,數簡如下所示。
首先,從http://suricata-ids.org/download/下載最新的Suricata源代碼,編譯山物代碼。截至本文撰稿時,最新版本是2.0.8。
$ wget http://www.openinfosecfoundation.org/download/suricata-2.0.8.tar.gz
$ tar -xvf suricata-2.0.8.tar.gz
$ cd suricata-2.0.8
$ ./configure --sysconfdir=/etc --localstatedir=/var

這是配置的示例輸出結果。
Suricata Configuration:
AF_PACKET support: yes
PF_RING support: no
NFQueue support: no
NFLOG support: no
IPFW support: no
DAG enabled: no
Napatech enabled: no
Unix socket enabled: yes
Detection enabled: yes
libnss support: yes
libnspr support: yes
libjansson support: yes
Prelude support: no
PCRE jit: yes
LUA support: no
libluajit: no
libgeoip: no
Non-bundled htp: no
Old barnyard2 support: no
CUDA enabled: no
現在編譯並安裝它。
$ make
$ sudo make install

Suricata源代碼隨帶默認的配置文件。不妨安裝這些默認的配置文件,如下所示。
$ sudo make install-conf

正如你所知,要是沒有IDS規則集,Suricata毫無用處。頗為方便的是,Makefile隨帶IDS規則安裝選項。想安裝IDS規則,運行下面這個命令即可。
$ sudo make install-rules

上述規則安裝命令會從EmergingThreats.net(https://www.bro.org)安裝可用的社區規則集的最新快照,並將它們存儲在/etc/suricata/rules下。

首次配置Suricata IDS
現在就可以配置Suricata了。配置文件位於/etc/suricata/suricata.yaml。使用文本編輯工具打開文件,以便編輯。
$ sudo vi /etc/suricata/suricata.yaml

下面是一些基本的設置,供你開始入門。
「default-log-dir」關鍵字應該指向Suricata日誌文件的位置。
default-log-dir: /var/log/suricata/

在「vars」這部分下面,你會找到Suricata使用的幾個重要變數。「HOME_NET」應該指向由Suricata檢查的本地網路。「!$HOME_NET」(被分配給EXTERNAL_NET)指本地網路以外的任何網路。「XXX_PORTS」表明不同服務所使用的一個或多個埠號。請注意:不管使用哪個埠, Suricata都能自動檢測HTTP流量。所以,正確指定HTTP_PORTS變數並不是很重要。
vars:
HOME_NET: "[192.168.122.0/24]"
EXTERNAL_NET: "!$HOME_NET"
HTTP_PORTS: "80"
SHELLCODE_PORTS: "!80"
SSH_PORTS: 22

「host-os-policy」這部分用來防範一些利用操作系統的網路堆棧的行為(比如TCP重組)來規避檢測的常見攻擊。作為一項應對措施,現代IDS想出了所謂的「基於目標的」檢測,檢查引擎根據流量的目標操作系統,對檢測演算法進行微調。因而,如果你知道每個本地主機運行什麼操作系統,就可以將該信息提供給Suricata,從而有望提高其檢測速度。這時候用到了「host-os-policy「部分。在該例子中,默認的IDS策略是Linux;如果不知道某個IP地址的操作系統信息,Suricata就會運用基於Linux的檢查策略。如果捕獲到192.168.122.0/28和192.168.122.155的流量,Suricata就會運用基於Windows的檢查策略。
host-os-policy:
# 這些是Windows機器。
windows: [192.168.122.0/28, 192.168.122.155]
bsd: []
bsd-right: []
old-linux: []
# 將Linux作為默認策略。
linux: [0.0.0.0/0]
old-solaris: []
solaris: ["::1"]
hpux10: []
hpux11: []
irix: []
macos: []
vista: []
windows2k3: []

在「threading」這部分下面,你可以為不同的Suricata線程指定CPU親和性(CPU affinity)。默認情況下,CPU親和性被禁用(「set-cpu-affinity: no」),這意味著Suricata線程將被安排在任何可用的CPU核心上。默認情況下,Suricata會為每個CPU核心創建一個「檢測」線程。你可以調整這個行為,只要指定「detect-thread-ratio: N」。這會創建N x M個檢測 線程,其中M是指主機上CPU核心的總數。
threading:
set-cpu-affinity: no
detect-thread-ratio: 1.5

就上述線程設置而言,Suricata會創建1.5 x M個檢測線程,其中M是系統上CPU核心的總數。
想了解關於Suricata配置的更多信息,你可以閱讀默認的配置文件本身,為了便於理解,加有大量注釋。
使用Suricata執行入侵檢測
現在可以試著運行Suricata了。在啟動它之前,還有一個步驟要完成。
如果你使用pcap捕獲模式,強烈建議關閉Suricata偵聽的那個網卡上的任何數據包卸載功能(比如LRO/GRO),因為那些功能可能會干擾數據包實時捕獲。
下面介紹如何關閉網路介面eth0上的LRO/GRO:
$ sudo ethtool -K eth0 gro off lro off

請注意:視使用的網卡而定,你可能會看到下列警示信息,可以忽視這個信息。它只是意味著你的網卡不支持LRO。
Cannot change large-receive-offload

Suricata支持多種運行模式。運行模式決定了不同的線程如何用於IDS。下面這個命令列出了所有可用的運行模式。
$ sudo /usr/local/bin/suricata --list-runmodes

Suricata使用的默認運行模式是autofp(代表「自動流綁定負載均衡模式」)。在這種模式下,來自每一路流的數據包被分配給單一的檢測線程。流被分配給了未處理數據包數量最少的線程。
最後,不妨啟動Suricata,看看它的實際運行情況。
$ sudo /usr/local/bin/suricata -c /etc/suricata/suricata.yaml -i eth0 --init-errors-fatal

在這個例子中,我們監控一個8核系統上的網路介面eth0。如上所示,Suricata創建了13個數據包處理線程和3個管理線程。數據包處理線程包括1個PCAP數據包捕獲線程和12個檢測線程(相當於8 x 1.5)。這意味著,一個捕獲線程捕獲的數據包經負載均衡處理後,變成了IDS面前的12個檢測線程。管理線程是一個流管理器和兩個計數器/統計相關線程。
下面是Suricata進程的線程視圖(由htop描繪)。
Suricata檢測日誌存儲在/var/log/suricata目錄下。
$ tail -f /var/log/suricata/fast.log
04/01/2015-15:47:12.559075 [**] [1:2200074:1] SURICATA TCPv4 invalid checksum [**] [Classification: (null)] [Priority: 3] {TCP} 172.16.253.158:22 -> 172.16.253.1:46997
04/01/2015-15:49:06.565901 [**] [1:2200074:1] SURICATA TCPv4 invalid checksum [**] [Classification: (null)] [Priority: 3] {TCP} 172.16.253.158:22 -> 172.16.253.1:46317
04/01/2015-15:49:06.566759 [**] [1:2200074:1] SURICATA TCPv4 invalid checksum [**] [Classification: (null)] [Priority: 3] {TCP} 172.16.253.158:22 -> 172.16.253.1:46317

為了易於導入,還有JSON格式的日誌:
$ tail -f /var/log/suricata/eve.json

{"timestamp":"2015-04-01T15:49:06.565901","event_type":"alert","src_ip":"172.16.253.158","src_port":22,"dest_ip":"172.16.253.1","dest_port":46317,"proto":"TCP","alert":{"action":"allowed","gid":1,"signature_id":2200074,"rev":1,"signature":"SURICATA TCPv4 invalid checksum","category":"","severity":3}}
{"timestamp":"2015-04-01T15:49:06.566759","event_type":"alert","src_ip":"172.16.253.158","src_port":22,"dest_ip":"172.16.253.1","dest_port":46317,"proto":"TCP","alert":{"action":"allowed","gid":1,"signature_id":2200074,"rev":1,"signature":"SURICATA TCPv4 invalid checksum","category":"","severity":3}}

③ linux服務查看攻擊者的IP的命令是什麼

這個涉及到入侵檢測類

如果木馬是潛伏期,比較復雜,一時半會給你講不清楚

如果木馬是活動期,正在枯陸孫大流量發包,

方法如下

1、iptraf -f,然後 選IP traffic monitor

指定你的網卡

會看到很多對應關系,這樣就可以找到發包最大的IP對應關系出來


2、netstat -tuanp |grep 大流量ip ,會得到對沒鏈應進程


3、iptables限制其出網

4、kill並刪除對應進程,然後查看/etc/rc.d 有沒有被注東西,包括chkconfig等,所有系統自起的全看看,,詳細的可以查詢一悉舉下入侵檢測部分時間有限不一 一說了

④ Linux的系統的安全如何保障保護Linux系統安全的九個常用方法

在現在這個世道中,保障基於Linux的系統的安全是十分重要的。但是,你得知道怎麼干。一個簡單反惡意程序軟體是遠遠不夠的,你需要採取其它措施來協同工作。那麼Linux的系統的安全如何保障?今天小編就為大家總結九個常用方法來保護Linux系統安全,希望能幫助到大家。

1. 使用SELinux

SELinux是用來對Linux進行安全加固的,有了它,用戶和管理員們就可以對訪問控制進行更多控制。SELinux為訪問控制添加了更細的顆粒度控制。與僅可以指定誰可以讀、寫或執行一個文件的許可權不同的是,SELinux可以讓你指定誰可以刪除鏈接、只能追加、移動一個文件之類的更多控制。(LCTT譯註:雖然NSA也給SELinux貢獻過很多代碼,但是目前尚無證據證明SELinux有潛在後門)

2禁用不用的服務和應用

通常來講,用戶大多數時候都用不到他們系統上的服務和應用的一半。然而,這些服務和應用還是會運行,這會招來攻擊者。因而,最好是把這些不用的服務停掉。(LCTT譯註:或者乾脆不安裝那些用不到的服務,這樣根本就不用關注它們是否有安全漏洞和該升級了。)

3 訂閱漏洞警報服務

安全缺陷不一定是在你的操作系統上。事實上,漏洞多見於安裝的應用程序之中。為了避免這個問題的發生,你必須保持你的應用程序更新到最新版本。此外,訂閱漏洞警報服務,如SecurityFocus。

4 使用Iptables

Iptables是什麼?這是一個應用框架,它允許用戶自己為系統建立一個強大的防火牆。因此,要提升安全防護能力,就要學習怎樣一個好的防火牆以及怎樣使用Iptables框架。

5 檢查系統日誌

你的系統日誌告訴你在系統上發生了什麼活動,包括攻擊者是否成功進入或試著訪問系統。時刻保持警惕,這是你第一條防線,而經常性地監控系統日誌就是為了守燃羨好這道防線。

6 考慮使用埠試探

設置埠試探(Port knocking)是建立伺服器安全連接的好方法。一般做法是發生特定的包給伺服器,以觸發伺服器的回應/連接(打開防火牆)。埠敲門對於那些有開放埠的系統是一個很好的防護措施。

7. 默認拒絕所有

防火牆有兩種思路:一個是允許每一點通信,另一個是拒絕所有訪問,提示你是否許可。第二種更好一些。你消指應該只允許那些重要的通信進入。(LCTT譯註:即默認許可策略和默認禁止策略,前者你需要指定哪些應該禁止,除此之外統統放行;後者你需要指定哪些可以放行,除此之外全部禁止。)

8.使用全盤加密

加密的數據更難竊取,有時候根本不可能被竊取,這就是你應該對整個驅動器加密的原因。採用這種方式後,如果有某個人進入到你的系統,那麼他看到這些加密的數據後,就有得頭痛了。根據一些報告,大多數數據丟失源於機器被盜。

9.使用入侵檢測系統

入侵檢測系統,或者叫IDS,允許你拿段配更好地管理系統上的通信和受到的攻擊。Snort是目前公認的Linux上的最好的IDS。

以上就是保護Linux系統安全的九個常用方法,希望能幫助到大家!

⑤ 如何檢查Linux系統伺服器的安全性

但由於該操作系統是一個多用戶操作系統,黑客們為了在攻擊中隱藏自己,往往會選擇 Linux作為首先攻擊的對象。那麼,作為一名Linux用戶,我們該如何通過合理的方法來防範Linux的安全呢?下面筆者搜集和整理了一些防範 Linux安全的幾則措施,現在把它們貢獻出來,懇請各位網友能不斷補充和完善。 1、禁止使用Ping命令Ping命令是計算機之間進行相互廳叢檢測線路完好的一個應用程序,計算機間交流數據的傳輸沒有 經過任何的加密處理,因此我們在用ping命令來檢測某一個伺服器時,可能在網際網路上存在某個非法分子,通過專門的黑客程序把在網路線路上傳輸的信息中途 竊取,並利用偷盜過來的信息對指定的伺服器或者系統進行攻擊,為此我們有必要在Linux系統中禁止使用Linux命令。在Linux里,如果要想使 ping沒反應也就是用來忽略icmp包,因此我們可以在Linux的命令行中輸入如下命令: echo 1 > /proc/sys/net/ipv4/icmp_echo_igore_all 如果想恢復使用ping命令,就可以輸入 echo 0 > /proc/sys/net/ipv4/icmp_echo_igore_all2、注意對系統及時備份為了防止系統在使用的過程中發生以外情況而難以正常運行,我們應該對Linux完好的系統進 行備份,最好是在一完成Linux系統的安裝任務後就對整個系統進行備份,以後可以根據這個備份來驗證系統的完整性,這樣就可以發現系統文件是否被非法修 改過。如果發生系統文件已經被破壞的情況,也可以使用系統備份來恢復到正常的狀態。備份信息時,我們可以把完好的系統信息備份在CD-ROM光碟上,以後 可以定期將系統與光碟內容進行比較以驗證系統的完整性是否遭到破壞。如果對安全級別的要求特別高,那麼可以將光碟設置為可啟動的並且將驗證工作作為系統啟 動過程的一部分。這樣只要可以通過光碟啟動,就說明系統尚未被破壞過。 3、改進登錄伺服器將系統的登錄伺服器移到一個單獨的機器中會增加系統的安全級別,使用一個更安全的登錄伺服器 來取代Linux自身的登錄工具也可以進一步提高安全。在大的Linux網路中,最好使用一個單獨的登錄伺服器用於syslog服務。它必須是一個能夠滿 足所有系統登錄需求並且擁有足夠的磁碟空間的伺服器系統,在這個系統上應該沒有其它的服務運行。更安全的登錄伺服器會大大削弱入侵者透過登錄系統竄改日誌 文件的能力。 4、取消Root命令歷史記錄在Linux下,系統會自動記錄用戶輸入過的命令,而root用戶發出的命令往往具有敏感的 信息,為了保證安全性,一般應該不記錄或者少記錄root的命令歷史記錄。為了設置系統不記錄每個人執行過的命令,我們可以在Linux的命令行下,首先 用cd命令進入到/etc命令,然後用編輯命令來打開該目錄下面的profile文件,並在其中輸入如下內容: HISTFILESIZE=0
HISTSIZE=0當然,我們也可以直接在命令行中輸入如下命令: ln -s /dev/null ~/.bash_history5、為關鍵分區建立只讀屬性Linux的文件系統可以分成幾個主要的分區,每個分區分別進行不同的配置和安裝,一般情況 下至少要建立/、/usr/local、/var和/home等分區。/usr可以安裝成只讀並且可以被認為是不可修改的。如果/usr中有任何文件發生 了改變,那麼系統將立即發出安全報警。當然這不包括用戶自己改變/usr中的內容。/lib、/boot和/sbin的安裝和設置也一樣。在安裝時應該盡 量將它們設置為只讀,並且對它們的鏈拆文件、目錄和屬性進行的任何修改都會導致系統報警。 當然將所有主要的分區都設置為只讀是不可能的,有的分區如/var等,其自身的性質就決定了不能將它們設置為只讀,但應該不允許它具有執行許可權。 6、殺掉攻擊者的所有進程假設我們從系統的日誌文件中發現了一個用戶從我們未知的主機登錄,而且我們確定該用戶在這台 主機上沒有相應的帳號,這表明此時我們正在受到攻擊。為了保證系統的安全被進一步破壞,我們應該馬上鎖住指定的帳號,如果攻擊者已經登錄到指定的系統,我 們應該馬上斷開主機與網路的物理連接。如有可能,我們還要棚伏棗進一步查看此用戶的歷史記錄,再仔細查看一下其他用戶是否也已經被假冒,攻擊者是否擁有有限權 限;最後應該殺掉此用戶的所有進程,並把此主機的IP地址掩碼加入到文件hosts.deny中。 7、改進系統內部安全機制我們可以通過改進Linux操作系統的內部功能來防止緩沖區溢出,從而達到增強Linux系 統內部安全機制的目的,大大提高了整個系統的安全性。但緩沖區溢出實施起來是相當困難的,因為入侵者必須能夠判斷潛在的緩沖區溢出何時會出現以及它在內存 中的什麼位置出現。緩沖區溢出預防起來也十分困難,系統管理員必須完全去掉緩沖區溢出存在的條件才能防止這種方式的攻擊。正因為如此,許多人甚至包括 Linux Torvalds本人也認為這個安全Linux補丁十分重要,因為它防止了所有使用緩沖區溢出的攻擊。但是需要引起注意的是,這些補丁也會導致對執行棧的 某些程序和庫的依賴問題,這些問題也給系統管理員帶來的新的挑戰。 8、對系統進行跟蹤記錄為了能密切地監視黑客的攻擊活動,我們應該啟動日誌文件,來記錄系統的運行情況,當黑客在攻 擊系統時,它的蛛絲馬跡都會被記錄在日誌文件中的,因此有許多黑客在開始攻擊系統時,往往首先通過修改系統的日誌文件,來隱藏自己的行蹤,為此我們必須限 制對/var/log文件的訪問,禁止一般許可權的用戶去查看日誌文件。當然,系統中內置的日誌管理程序功能可能不是太強,我們應該採用專門的日誌程序,來 觀察那些可疑的多次連接嘗試。另外,我們還要小心保護好具有根許可權的密碼和用戶,因為黑客一旦知道了這些具有根許可權的帳號後,他們就可以修改日誌文件來隱 藏其蹤跡了。 9、使用專用程序來防範安全有時,我們通過人工的方法來監視系統的安全比較麻煩,或者是不周密,因此我們還可以通過專業 程序來防範系統的安全,目前最典型的方法為設置陷井和設置蜜罐兩種方法。所謂陷井就是激活時能夠觸發報警事件的軟體,而蜜罐(honey pot)程序是指設計來引誘有入侵企圖者觸發專門的報警的陷井程序。通過設置陷井和蜜罐程序,一旦出現入侵事件系統可以很快發出報警。在許多大的網路中, 一般都設計有專門的陷井程序。陷井程序一般分為兩種:一種是只發現入侵者而不對其採取報復行動,另一種是同時採取報復行動。 10、將入侵消滅在萌芽狀態入侵者進行攻擊之前最常做的一件事情就是端號掃瞄,如果能夠及時發現和阻止入侵者的端號掃瞄 行為,那麼可以大大減少入侵事件的發生率。反應系統可以是一個簡單的狀態檢查包過濾器,也可以是一個復雜的入侵檢測系統或可配置的防火牆。我們可以採用諸 如Abacus Port Sentry這樣專業的工具,來監視網路介面並且與防火牆交互操作,最終達到關閉埠掃瞄攻擊的目的。當發生正在進行的埠掃瞄時,Abacus Sentry可以迅速阻止它繼續執行。但是如果配置不當,它也可能允許敵意的外部者在你的系統中安裝拒絕服務攻擊。正確地使用這個軟體將能夠有效地防止對 端號大量的並行掃瞄並且阻止所有這樣的入侵者。 11、嚴格管理好口令前面我們也曾經說到過,黑客一旦獲取具有根許可權的帳號時,就可以對系統進行任意的破壞和攻 擊,因此我們必須保護好系統的操作口令。通常用戶的口令是保存在文件/etc/passwd文件中的,盡管/etc/passwd是一個經過加密的文件, 但黑客們可以通過許多專用的搜索方法來查找口令,如果我們的口令選擇不當,就很容易被黑客搜索到。因此,我們一定要選擇一個確保不容易被搜索的口令。另外,我們最好能安裝一個口令過濾工具,並借用該工具來幫助自己檢查設置的口令是否耐得住攻擊。

閱讀全文

與linux入侵檢測方法相關的資料

熱點內容
dna同位素標記用了哪些方法 瀏覽:687
dha核桃油食用方法 瀏覽:143
鋼筋移位安裝方法 瀏覽:829
擬研究的內容思路與方法怎麼寫 瀏覽:843
q74螺紋安裝方法 瀏覽:895
簡單去毛又不疼的方法 瀏覽:171
紅利轉投份額計算方法 瀏覽:59
貓罐頭食用方法 瀏覽:54
香港拓客方法如何做 瀏覽:121
體力考核哪些方法 瀏覽:292
電腦防止蹭網最簡單方法 瀏覽:510
散裝苦蕎的食用方法 瀏覽:890
治療hpv有什麼好方法嗎 瀏覽:957
方差分析數據變換方法 瀏覽:68
和田玉籽料玉器鑒別方法 瀏覽:384
導線計算方法 瀏覽:322
票房的計算方法 瀏覽:573
少兒象棋教學方法探討 瀏覽:894
口腔黏液囊腫治療方法 瀏覽:415
什麼是密度測量方法 瀏覽:592