• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于日志分析和netsh命令的非法IP屏蔽策略

      2018-01-13 01:45:20安敬鑫
      關(guān)鍵詞:日志命令屏蔽

      ◆張 勇 安敬鑫

      (山東輕工職業(yè)學(xué)院信息中心 山東 255300 )

      0 引言

      幾乎所有企事業(yè)單位都建設(shè)了對(duì)公眾開放的服務(wù)器,例如ftp服務(wù)器、web服務(wù)器等,這些服務(wù)器大多數(shù)使用Windows Server或Linux操作系統(tǒng),隨著互聯(lián)網(wǎng)的發(fā)展,服務(wù)器安全問題越來越突出,被攻擊事件層出不窮,因此服務(wù)器的安全防御越發(fā)重要。

      為保障服務(wù)器安全,管理員采取了諸多措施,例如購買安全狗、安裝殺毒軟件、關(guān)閉無用端口、查找漏洞等等,無論采取何種措施,最好的辦法莫過于找到企圖入侵的黑客的IP并屏蔽它,為達(dá)到這個(gè)目的,本文提出了使用正則表達(dá)式分析日志、利用netsh命令自動(dòng)屏蔽非法IP的策略。

      由于不同類型服務(wù)器的日志格式和防火墻命令不同,所以本策略需要具體到某類服務(wù)器才能編程實(shí)現(xiàn),本文將針對(duì)常用的Windows Server + IIS7.5服務(wù)器進(jìn)行闡述,其設(shè)計(jì)思路同樣適合于其他類型服務(wù)器。

      1 IIS日志和netsh命令介紹

      1.1 IIS日志

      任何服務(wù)都會(huì)提供日志文件記錄來訪用戶的詳細(xì)信息,多數(shù)日志可以以文本格式讀出。以IIS日志為例,日志文件所在目錄默認(rèn)位置是%systemroot%system32logfiles,日志格式有三種:Microsoft IIS格式、NCSA格式和W3C格式,每種格式的記錄方式略有差別,但都記錄了來訪者 IP地址、訪問的服務(wù)器端口、訪問方法(get或 post等)、訪問的 URL、訪問時(shí)間等信息。以NCSA格式為例,日志文件名稱為u_nc171101.log,表示這是2017年11月1日的日志,其中一條信息如下:

      10.6.84.9 - - [01/Nov/2017∶10∶22∶43 +0800] "GET /zs/web/HTTP/1.1" 200 16208

      此信息表示:來訪者的IP地址為10.6.84.9,在2017年11月1日10點(diǎn)22分43秒以GET方式訪問了本網(wǎng)站的/zs/web目錄下的首頁,返回了狀態(tài)代碼200,說明訪問成功。

      1.2 netsh命令

      netsh允許以命令行腳本方式配置當(dāng)前運(yùn)行的計(jì)算機(jī)的網(wǎng)絡(luò)參數(shù),包括修改Window防火墻配置。

      多數(shù)管理員在發(fā)現(xiàn)企圖入侵的 IP后,在防火墻上以手動(dòng)方式創(chuàng)建規(guī)則,禁止非法 IP訪問本服務(wù)器,這種操作比較繁瑣,更好的辦法是使用netsh命令創(chuàng)建規(guī)則,例如:禁止 24.105.9.201訪問本服務(wù)器所有端口的netsh命令如下:

      netsh advfirewall firewall add rule name="ip1" dir=in action=block remoteip=24.105.9.201

      刪除 name="ip1" 規(guī)則的命令如下:

      netsh advfirewall firewall delete rule name="ip1"

      2 策略的設(shè)計(jì)思路

      本策略包含以下幾個(gè)功能:

      (1)定時(shí)讀取IIS日志:

      (2)SQL注入檢查;

      (3)惡意掃描檢查;

      (4)IP屏蔽。

      2.1 定時(shí)讀取IIS日志

      默認(rèn)情況下IIS日志記錄按天記錄網(wǎng)站訪問信息,如果網(wǎng)站訪問量較大,則當(dāng)天的IIS日志文件可能達(dá)到幾十甚至上百兆,IIS每分鐘內(nèi)向日志寫入大量的數(shù)據(jù)行,依靠管理員手動(dòng)分析是不可能的,即使有日志分析工具,也無法做到24小時(shí)監(jiān)控,本策略實(shí)現(xiàn)了一個(gè)定時(shí)讀取日志的功能模塊,模塊中含有Timer定時(shí)器,根據(jù)服務(wù)器負(fù)擔(dān)情況,每隔若干分鐘,讀取日志文件新寫入的數(shù)據(jù)行到數(shù)據(jù)庫。由于本策略實(shí)現(xiàn)的程序使用資源少,即使每隔1分鐘讀取一次也不會(huì)明顯增加服務(wù)器負(fù)擔(dān)。

      2.2 SQL檢查注入

      入侵者提交的用戶請(qǐng)求,主要通過URL的get和post兩種方式進(jìn)行SQL注入攻擊,目前微軟的IIS日志并沒有記錄post提交的內(nèi)容信息,而是記錄了 get提交的 URL信息,鑒于多數(shù) SQL攻擊是通過這一方式發(fā)起的,所以分析URL可以有效的發(fā)現(xiàn)SQL攻擊行為。

      以get提交方式發(fā)起的攻擊行為,具體表現(xiàn)是在URL參數(shù)中使用各類非法字符或字符串,構(gòu)造出 SQL或 CMD命令傳遞給Web服務(wù)器,從而獲取服務(wù)器敏感信息甚至控制整個(gè)Web服務(wù)器,URL參數(shù)中可能包含的非法內(nèi)容如下:

      (1)非法符號(hào):?jiǎn)我?hào)、圓括號(hào)、方括號(hào)、尖括號(hào)、花括號(hào)、星號(hào)、分號(hào)等;

      (2)非法關(guān)鍵詞:select、union、where、javascript、group、administrator、cmdshell、alert等;

      (3)非法正則表達(dá)式:為了靈活檢查URL的合法性,需要設(shè)計(jì)出能匹配復(fù)雜非法字符串的正則表達(dá)式,例如:.*(select).*(from|where|union),如果URL匹配了此正則表達(dá)式,說明含有(select和from)或(select和where)或(select和union)三者其一,此URL就是SQL攻擊。

      本策略的SQL注入檢查模塊正是通過分析URL是否含有以上三類內(nèi)容,來判斷其合法性。

      由于新的SQL注入字符串不斷被入侵者構(gòu)造出來,所以本策略的注入檢查模塊將以上三類內(nèi)容放入一個(gè)XML文件中,這樣方便日后更新。

      2.3 惡意掃描檢查

      網(wǎng)站入侵者經(jīng)常使用掃描工具對(duì)網(wǎng)站進(jìn)行漏洞掃描,被掃描網(wǎng)站會(huì)在數(shù)秒內(nèi)接收到來自某個(gè)IP的成百上千次get請(qǐng)求,因此發(fā)現(xiàn)掃描行為、屏蔽掃描來源也是保護(hù)網(wǎng)站的措施之一。

      模塊設(shè)計(jì)思路:

      (1)設(shè)定一個(gè)單位時(shí)間訪問上限,規(guī)定本網(wǎng)站每N秒最多允許接收某IP的M個(gè)get請(qǐng)求。

      (2)記錄每個(gè)IP的訪問次數(shù),每收到一個(gè)get請(qǐng)求,就將其IP來訪次數(shù)加1。

      (3)模塊中定義一個(gè)Timer計(jì)數(shù)器,每隔N秒檢查所有被記錄的IP的訪問次數(shù),若發(fā)現(xiàn)某個(gè)IP發(fā)送的請(qǐng)求數(shù)量高于限定值M,就認(rèn)定此IP在掃描網(wǎng)站,需要屏蔽此IP。

      2.4 屏蔽非法IP

      發(fā)現(xiàn)了非法IP后,就要徹底屏蔽它們,管理員通常在window防火墻手動(dòng)添加規(guī)則來屏蔽 IP,這種做法無法實(shí)現(xiàn)程序自動(dòng)添加,經(jīng)驗(yàn)表明很多攻擊行為是在夜間發(fā)生的,所以本策略程序必須24小時(shí)無人值守運(yùn)行,發(fā)現(xiàn)入侵IP后能夠自動(dòng)添加屏蔽規(guī)則。

      通過執(zhí)行netsh.exe命令腳本,可以在windows防火墻上添加規(guī)則,例如:netsh advfirewall firewall add rule name="IP_BLOCK1" dir=in action=block remoteIP=24.105.9.201,此命令的意思是:建立一條名稱為IP_BLOCK1的規(guī)則,禁止24.105.9.201的任何協(xié)議數(shù)據(jù)進(jìn)入本服務(wù)器的任何端口。

      本策略的屏蔽IP模塊在接收到非法IP后,將此IP字符串拼接成一條netsh.exe命令腳本,使用C#語言的ProcessStartInfo和Process類執(zhí)行此命令,從而實(shí)現(xiàn)自動(dòng)添加規(guī)則,基本代碼如下:

      ProcessStartInfo start = new ProcessStartInfo("netsh.exe");

      start.Arguments = " advfirewall firewall delete rule name="ip_001" "; //設(shè)置命令參數(shù)

      start.CreateNoWindow = true; //不顯示dos命令行窗口

      start.RedirectStandardOutput = true;

      start.RedirectStandardInput = true;

      start.UseShellExecute = false; //是否指定操作系統(tǒng)外殼進(jìn)程啟動(dòng)程序

      start.WindowStyle = ProcessWindowStyle.Hidden;

      Process p = Process.Start(start);

      StreamReader reader = p.StandardOutput; //截取輸出流

      string line = reader.ReadLine(); //每次讀取一行

      while (!reader.EndOfStream)

      {

      Console.Out.WriteLine(line);

      line = reader.ReadLine();

      }

      p.WaitForExit();

      p.Close(); //關(guān)閉進(jìn)程

      reader.Close(); //關(guān)閉流

      3 程序?qū)崿F(xiàn)

      本策略以window服務(wù)在后臺(tái)運(yùn)行,執(zhí)行過程大體如下:

      (1)啟動(dòng)時(shí)加載自定義參數(shù),包括預(yù)定義的非法字符、非法字符串、非法正則表達(dá)式、單位時(shí)間訪問次數(shù)上限、掃描時(shí)間間隔等;

      (2)定時(shí)掃描IIS日志,將新的用戶請(qǐng)求讀取到Mysql數(shù)據(jù)庫;

      (3)檢查這些請(qǐng)求的URL是否含有非法內(nèi)容,若有則將IP傳給屏蔽模塊;

      (4)檢查IP的來訪次數(shù)是否超過了規(guī)定的上限,若超過則將IP傳給屏蔽模塊。

      程序流程圖如下:

      圖1 屏蔽非法IP程序流程

      4 結(jié)束語

      本文提出的使用日志分析和netsh命令屏蔽非法IP的方法,易于編程實(shí)現(xiàn)、靈活實(shí)用,起到了主動(dòng)防御SQL注入的作用,適用于基于ASP.NET架構(gòu)的Web服務(wù)器。

      [1]張慧琳,鄒維.網(wǎng)頁木馬機(jī)理與防御技術(shù)[J].軟件學(xué)報(bào),2013.

      [2]安曉瑞.Asp網(wǎng)站中一句話木馬的安全性問題及防范措施的研究[J].首都師范大學(xué)學(xué)報(bào),2014.

      [3]王繼剛.揭秘 WEB應(yīng)用程序攻擊技術(shù)[M].中國水利水電出版社,2009.

      [4]王海峰,段友祥,劉仁寧.基于行為分析的病毒檢測(cè)引擎的改良研究[J].計(jì)算機(jī)應(yīng)用,2004.

      [5]張勇,李力,薛倩.Web環(huán)境下SQL注入攻擊的檢測(cè)與防御[J].現(xiàn)代電子技術(shù),2004.

      猜你喜歡
      日志命令屏蔽
      把生活調(diào)成“屏蔽模式”
      好日子(2022年3期)2022-06-01 06:22:10
      只聽主人的命令
      一名老黨員的工作日志
      扶貧日志
      心聲歌刊(2020年4期)2020-09-07 06:37:14
      朋友圈被屏蔽,十二星座怎么看
      移防命令下達(dá)后
      游學(xué)日志
      滿足CLASS A++屏蔽性能的MINI RG59集束電纜的研發(fā)
      電線電纜(2017年5期)2017-10-18 00:52:04
      幾乎最佳屏蔽二進(jìn)序列偶構(gòu)造方法
      這是人民的命令
      木里| 娱乐| 东乌珠穆沁旗| 莒南县| 织金县| 沙洋县| 姚安县| 额尔古纳市| 信宜市| 南木林县| 巩留县| 饶阳县| 集贤县| 富锦市| 福建省| 莱阳市| 宁远县| 罗定市| 贵港市| 江陵县| 政和县| 郧西县| 永新县| 辽阳县| 右玉县| 乌鲁木齐县| 昭苏县| 海丰县| 桐柏县| 肥城市| 普兰店市| 西乡县| 邹平县| 大名县| 南漳县| 临夏县| 淅川县| 田东县| 怀仁县| 宿迁市| 犍为县|