日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

爬取某在线恶意软件仓库病毒文件进行分析

發布時間:2023/12/16 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 爬取某在线恶意软件仓库病毒文件进行分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

 前段時間,因為工作需要,要收集一些木馬文件,于是就找到了一個網站:VirusShare.com,在這里,研究者可以提交并獲得惡意軟件的樣本。該網站實時更新來自全球的惡意文件樣本。本來打算自己動手下載呢,但是特征文件更新比較慢,等好久才會出現一個我想要的文件。剛好當時也在寫Python的爬蟲,就寫了一個爬蟲來爬。后來實驗的效果果然不錯,一晚上就把我一星期的工作量就完成了。又一次說明一個道理:代碼解放雙手。。。
好了,不多說了,我們看一下這個網站的樣子:

可以看到現在圖片是黑白顏色的,原因是我們還沒有進行登陸。登陸后會有一些變化。因為是實時更新的,我們現在看到的惡意文件的MD5和sha1以及SHA256的值,其中我們最想知道的是文件的類型,這個在File Type中可以看到是PE文件,也就是可執行文件。還有一些其他的參數,沒怎么仔細看。好了,不多說了,下面說一下爬蟲的編寫過程:


  • 首先我們模擬一遍下載的過程,通過HTTPFox抓包分析每一條請求,然后把下載請求找出來,HTTPFox的使用細節不多說了。
  • 然后,我直接上代碼吧
  • # coding=utf-8 #author='CMZ' import urllib import urllib2 import cookielib import datetime import time import reurl = 'http://www.virusshare.com' def Get_Page():#主機地址hosturl = 'http://virusshare.com/'# post的urlposturl = 'http://virusshare.com/processlogin.4n6'#設置cookie處理器cj = cookielib.LWPCookieJar()cookie_support = urllib2.HTTPCookieProcessor(cj)opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler)urllib2.install_opener(opener)#打開登陸頁面h = urllib2.urlopen(hosturl)#構造headerheaders = {'User-Agent': 'Mozilla/4.0 compatible; MSIE 5.5; Windows NT'}postData = {'username': '*******',#登陸賬號'password': '*******'#登陸密碼}#給post數據編碼postData = urllib.urlencode(postData)#通過urllib提供的request方法向指定的url發送剛才構造的數據,完成登陸request = urllib2.Request(posturl, postData, headers)# print requestresponse = urllib2.urlopen(request)text = response.read()return textdef Judje_Page(page):'''判斷是不是PE文件,如果是,保存到本地,如果不是則丟棄!'''PE_page = re.search('PE', page)#這里可以修改第一個參數來改變你想要的文件類型,因為我需要的PE所以這里就填寫的'PE'參數。if PE_page:SHA256 = re.findall(r'href="(.*?)">', page)url = 'http://virusshare.com/'+ SHA256[9]print '\033[0;32;40m'+'匹配成功! ',datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')+'-------現在保存文件.....'# print url#用文件SHA256進行命名,將文件下載并保存到本地以文件的,i = str(SHA256[9])with open(str(i[-64:])+'.exe','wb')as code:code.write(urllib2.urlopen(url).read())else:print '\033[0;31;40m'+'匹配失敗!',datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')+'-------現在丟棄文件.....'while True:page = Get_Page()# print pageJudje_Page(page)time.sleep(15)

    3.上面就是代碼了,寫的很渣。
    **

    - 完!

    **

    總結

    以上是生活随笔為你收集整理的爬取某在线恶意软件仓库病毒文件进行分析的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。