欢迎光临
我们一直在努力

[原创]根据MD5特征制作定时木马查杀工具

本帖最后由 小奥2014 于 2022-11-4 13:45 编辑

首先应该明白您的木马文件的真实性,也就是删除不会影响正常业务,确信这是一个木马
接下来我们开始通过工具获取md5

一,宝塔获取MD5码

通过宝塔获取MD5的方式很简单

[Bash shell] 纯文本查看 复制代码
md5sum file

file是文件名称,在当前目录,否则补全绝对路径

二,通过其他的方式获取MD5

当然你可以通过河马shell查杀的建议清理文件,然后跑MD5码
或者通过阿里云安全感知,腾讯云安全等途径获取到

三,开始准备一套安全的机制

首先我选择了公开一份MD5清单到另外的服务器,这样子更加安全靠谱,免得被破坏造成损失!
将MD5文件统计好,放到txt,然后放到其他网站做成可访问url,方便调用

一行一个,爽歪歪

四,开始部署杀毒脚本

首先我们思路一定要清晰,这个脚本就是要去比对文件MD5是否和记录值相同,如果相同,就会删除它!

[Python] 纯文本查看 复制代码
import hashlib   import osimport ioimport sysimport wgetimport sslimport timessl._create_default_https_context = ssl._create_unverified_context# 2022年11月3日17:23:42def printUsage():    print ('''Usage: [python] s.py ''')# 计算MD5值def geneMd5(filename):    m = hashlib.md5()    file = io.FileIO(filename,'r')    bytes = file.read(1024)    while(bytes != b''):        m.update(bytes)        bytes = file.read(1024)     file.close()    return m.hexdigest()# 获取MD5文件内容def update_md5_file():    url = 'http://xxxxxx.net/md5lib.txt' # 目标路由url    md5lib = '/opt/md5lib.txt' # 保存的路径    if os.path.exists(md5lib) == True:        os.remove(md5lib)        print('清理过期数据...OK')    print('开始更新特征库...')    wget.download(url, md5lib) # # 将MD5组成集合def get_list():    global md5_list    md5lib = '/opt/md5lib.txt' # 保存的路径    md5_list = []    with open(md5lib,'r',encoding="utf-8") as rr:        for i in rr.readlines():            md5_list.append(i.strip('\n'))# 清理符合的文件,如果担心的请勿开启def clean_file(file):    os.remove(file)    print('[Succeed]清理病毒文件:%s成功!'%(file))        # 主脚本def main():    os.system('clear')    update_md5_file()    get_list()    md5lib = '/opt/md5lib.txt' # 保存的路径    if(len(sys.argv) != 1 and len(sys.argv) != 2):        printUsage()    mat = "{:48}\t{:32}"    print('\n特征更新完成!')    time.sleep(2)    os.system('clear')    print('[Work]Fiime病毒扫描器,扫描中...')    if(len(sys.argv)==1):        path="/www/wwwroot/"        #请修改此行!此处对应需计算的文件夹绝对路径    if(len(sys.argv)==2):        path=sys.argv[1]    for fpathe,dirs,fs in os.walk(path):        for f in fs:            full_file = os.path.join(fpathe,f)            # print (mat.format(full_file,geneMd5(full_file)))            if geneMd5(full_file) in md5_list:                print('[Info]发现感染:%s'%(full_file))                # 如果不开启清理,请注释掉下面的一行                clean_file(full_file)            else:                pass    print('查杀完毕!')                main()

五,设置定时任务

手动的年代已经过去了,利用宝塔检测 /www/wwwroot/ 下的所有子民安全吧

好了摆烂了,以后新增MD5就去更新txt文件就行了,接下来看看效果!

六,效果图

八,总结感谢大家,请尊重我的原创文章,如需转载请联系我 FiimeROM 的奥奥

赞(0) 打赏
未经允许不得转载:哈哈网 » [原创]根据MD5特征制作定时木马查杀工具

评论 抢沙发

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏