最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用python分析access日志的方法

 更新時間:2016年10月26日 09:05:29   投稿:daisy  
最近在自學python,光看是不行的,還是要多實操的。這就是一個寫給自己的小小工具。主要功能是,便利日志文件夾下的文件,根據(jù)設(shè)定的關(guān)鍵字查找是否有web攻擊行為。有需要的朋友們下面來一起看看吧。

前言

WAF上線之后,處理最多的是誤報消除。

產(chǎn)生誤報有多種原因,比如web應用源碼編寫時允許客戶端提交過多的cookie;比如單個參數(shù)提交的數(shù)值太大。

把誤報降低到了可接受的范圍后,還要關(guān)注漏報。WAF不是神,任何WAF都可能被繞過。所以還需要定位漏過的攻擊,明確漏報的原因,才能update WAF的策略。

要定位漏報,就必須分析Web應用的訪問日志了。一個站點,每天產(chǎn)生的access日志大概接近1GB,顯然靠肉眼看是不現(xiàn)實的。這就需要用python幫助自動分析。

實現(xiàn)思路

拿我司某Web系統(tǒng)舉例:

     apache開啟了access日志記錄

     日志規(guī)則是每小時生成一個日志文件,以站點名稱為文件名,以日期+時間為后綴。例如:special.XXXXXX.com.cn.2016101001

要分析這些散碎的日志文件,我的思路如下:

     1、根據(jù)用戶命令行輸入獲取日志文件所在目錄;

     2、遍歷目錄下所有文件,合并到一個文件;

     3、定義web攻擊常見payload的字符串:

          SQLi的:select、union、+–+;

          Struts的:ognl、java

          webshell常見的:base64、eval、excute

使用正則逐行匹配,將命中的日志復制到單獨的文件。

實現(xiàn)代碼

代碼如下:

# -*-coding: utf-8 -*-
import os,re,sys
if len(sys.argv) != 2 :
  print 'Usage : python logaudit.py <path>'
  sys.exit()
logpath = sys.argv[1]
#獲取輸入?yún)?shù)的文件路徑'
merge = re.compile(r'.*(\d[10])')
for root , dirs , files in os.walk(logpath):
  for line in files:
    #遍歷日志文件夾,合并所有內(nèi)容到一個文件
    pipei = merge.match(line)
    if pipei != None:
      tmppath = root + '\\' +line
      logread1 = open(tmppath,'r')
      logread = logread1.read()
      log2txt = open('.\\log.txt','a')
      log2txt.write(logread)
      log2txt.close()
      logread1.close()
    else:
      exit
log = open('.//log.txt','r')
logread = log.readlines()
auditString = re.compile(r'.*[^_][sS][eE][lL][eE][cC][tT][^.].*|.*[uU][nN][iI][Oo][nN].*|.*[bB][aA][sS][eE][^.].*|.*[oO][gG][nN][lL].*|.*[eE][vV][aA][lL][(].*|.*[eE][xX][cC][uU][tT][eE].*')
writelog = open('.//result.txt','a')
for lines in logread:
  auditResult = auditString.match(lines)
  if auditResult != None:
    writelog.write(auditResult.group())
    writelog.write('\n')
  else:
    exit
writelog.close()
log.close()

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

相關(guān)文章

  • node中短信api實現(xiàn)驗證碼登錄的示例代碼

    node中短信api實現(xiàn)驗證碼登錄的示例代碼

    這篇文章主要介紹了node中短信api實現(xiàn)驗證碼登錄的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • Node.js中的文件系統(tǒng)(file system)模塊詳解

    Node.js中的文件系統(tǒng)(file system)模塊詳解

    Node.js文件系統(tǒng)模塊提供了豐富的方法,用于讀取、寫入、操作文件和目錄,文件系統(tǒng)模塊是Node.js強大而靈活的一部分,為文件操作提供了方便的API,本文給大家介紹Node.js中的文件系統(tǒng)(file system)模塊,感興趣的朋友一起看看吧
    2023-11-11
  • express express-session的使用小結(jié)

    express express-session的使用小結(jié)

    這篇文章主要介紹了express express-session的使用小結(jié),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12
  • nodejs連接ftp上傳下載實現(xiàn)方法詳解【附:踩坑記錄】

    nodejs連接ftp上傳下載實現(xiàn)方法詳解【附:踩坑記錄】

    這篇文章主要介紹了nodejs連接ftp上傳下載實現(xiàn)方法,結(jié)合實例形式詳細分析了node.js使用ftp模塊實現(xiàn)針對ftp上傳、下載相關(guān)操作的方法,并附帶記錄了傳輸速度慢的解決方法,需要的朋友可以參考下
    2023-04-04
  • 關(guān)于node+mysql數(shù)據(jù)庫連接池連接

    關(guān)于node+mysql數(shù)據(jù)庫連接池連接

    這篇文章主要介紹了關(guān)于node+mysql數(shù)據(jù)庫連接池連接,mysql有兩種連接方式:一種是直接連接 另一種是池化連接,我們這篇講的是池化連接,需要的朋友可以參考下
    2023-04-04
  • mac下徹底卸載node和npm方法步驟

    mac下徹底卸載node和npm方法步驟

    我們經(jīng)常在卸載軟件的時候會遇到有殘留,這樣就很難去重新下載,本篇文章就來介紹mac下徹底卸載node和npm及重新安裝的方法,有需要的朋友可以借鑒參考下
    2021-09-09
  • node pnpm修改默認包的存儲路徑(操作方法)

    node pnpm修改默認包的存儲路徑(操作方法)

    PNPM是一個新的包管理工具,也是NPM的另一個替代方案,與NPM不同,PNPM使用符號鏈接(symlink)而不是復制文件來安裝包,這篇文章主要介紹了node pnpm修改默認包的存儲路徑,需要的朋友可以參考下
    2024-05-05
  • 詳解electron如何攔截網(wǎng)絡(luò)請求并處理響應

    詳解electron如何攔截網(wǎng)絡(luò)請求并處理響應

    這篇文章主要為大家詳細介紹了electron如何攔截網(wǎng)絡(luò)請求并處理響應,文中的示例代碼講解詳細,具有一定的借鑒價值,感興趣的小伙伴可以跟隨小編一起學習一下
    2023-12-12
  • 在Node.js中判斷路徑是否絕對的解決方法

    在Node.js中判斷路徑是否絕對的解決方法

    在不同的操作系統(tǒng)中,路徑的表示方式有很大的差異,當編寫跨平臺的 Node.js 應用時,正確判斷路徑的絕對性變得至關(guān)重要,本文提供了path-is-absolute模塊的詳細使用指南,它是一個兼容 Node.js 早期版本且適用于所有操作系統(tǒng)的解決方案,需要的朋友可以參考下
    2024-04-04
  • 使用PM2實現(xiàn)高效的應用監(jiān)控與管理功能

    使用PM2實現(xiàn)高效的應用監(jiān)控與管理功能

    PM2?是一個流行的進程管理器,用于?Node.js?應用程序,它支持應用程序的負載均衡、自動重啟、日志管理、監(jiān)控以及多環(huán)境管理等功能,本文給大家介紹了如何使用PM2實現(xiàn)高效的應用監(jiān)控與管理功能,需要的朋友可以參考下
    2024-02-02

最新評論

东兰县| 贞丰县| 天水市| 六盘水市| 读书| 扎囊县| 漾濞| 尉氏县| 韶山市| 祁东县| 南川市| 会宁县| 陈巴尔虎旗| 瑞安市| 绥中县| 广水市| 永胜县| 隆林| 建昌县| 南皮县| 东港市| 宿迁市| 安仁县| 牟定县| 万年县| 崇义县| 克山县| 巴林左旗| 兴和县| 车致| 海门市| 定州市| 固镇县| 屏东县| 射洪县| 鹰潭市| 南郑县| 旌德县| 巴里| 芦山县| 平安县|