【发布时间】:2018-10-05 02:22:46
【问题描述】:
鉴于:
SHA-1,VSDT,
0191a23ee122bdb0c69008971e365ec530bf03f5,MIME 6010-0,
02b809d4edee752d9286677ea30e8a76114aa324,Microsoft RTF 6008-0,undet
1537761898 0 1 1 1537733097 1537733098 1537733097 8224 74 215552 06a60c6018a42b1db22e3bf8620861711401c4bb.crdownload TROJ.Win32.TRX.XXPE50FFF026 c:\users\administrator\desktop\downloader\download\ TRENDX 172.20.4.179 Administrator c1f387a6f45414366755b0a1874b36ff9596d8ad AABACACCBIiAgXWACAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= TSPY_HPDYRE.SM;TSPY_GOLROTED.ACS;TROJ_GEN.R021C0FFO15;TROJ_GEN.R021C0DLO15;Ransom_HPCRYPTESLA.SM2;
任务:
我的任务是将 sha1_vsdt.csv 第一列中的字符串与我的 trendx.log 文件匹配。一旦找到匹配,它应该在日志文件中获取描述并将其放在 csv 的第三列中,否则将未检测到。
我已经做了匹配的字符串,我得到了结果,但我不知道如何将结果转储到 csv 的第三列。我应该使用什么?有没有我可以使用的库?
示例:如果0191a23ee122bdb0c69008971e365ec530bf03f5在日志文件中找到匹配,则获取描述,然后将其放在第三列
SHA-1,VSDT,
0191a23ee122bdb0c69008971e365ec530bf03f5,MIME 6010-0,
结果会是这样的:
SHA-1,VSDT,DESC
0191a23ee122bdb0c69008971e365ec530bf03f5,MIME 6010-0,TROJ.Win32.TRX.XXPE50FFF026
代码:我已经可以得到结果但是不知道如何将变量result转储到csv的第三列,请帮忙
import numpy as np
import pandas as pd
import csv
pd.set_option('display.max_rows', 1000)
logtext = "trendx.log"
#Log data into dataframe using genfromtxt
logdata = np.genfromtxt(logtext + ".txt",invalid_raise = False,dtype=str, comments=None,usecols=np.arange(16))
logframe = pd.DataFrame(logdata)
#print (logframe.head())
#Dataframe trimmed to use only SHA1, PRG and IP
df2=(logframe[[10,11]]).rename(columns={10:'SHA-1', 11: 'DESC'})
#print (df2.head())
#sha1_vsdt data into dataframe using read_csv
df1=pd.read_csv("sha1_vsdt.csv",delimiter=",",error_bad_lines=False,engine = 'python',quoting=3)
#Using merge to compare the two CSV
df = pd.merge(df1, df2, on='SHA-1', how='left').fillna('undetected')
result = (df[['DESC']])
print result
我的输出:
DESC
0 undetected
1 undetected
2 undetected
3 undetected
4 undetected
5 undetected
6 undetected
7 undetected
8 undetected
9 undetected
10 undetected
11 undetected
12 undetected
13 TROJ.Win32.TRX.XXPE50FFF026
14 TROJ.Win32.TRX.XXPE50FFF026
CSV 格式的预期输出:
SHA-1,VSDT,DESC
0191a23ee122bdb0c69008971e365ec530bf03f5,MIME 6010-0,TROJ.Win32.TRX.XXPE50FFF026
02b809d4edee752d9286677ea30e8a76114aa324,Microsoft RTF 6008-0,undetected
【问题讨论】:
-
df1['DESC'] = df['DESC'].values 应该可以满足您的需求。
-
你能给出完整的答案,我可以投票