2018年4月份,网络安全公司Endgame发布了一款名为EMBER的大型开源数据集。EMBER是一个包含了100多万种良性和恶意PE文件(Windows可执行文件)集合,这是一种常见的恶意软件隐藏格式。同时,针对该数据集,该公司同时在github上发布了如何使用该数据集的一个教程贴。在该教程的指引下,我尝试搭建了该项目的运行环境,并成功执行。但是过程中依然遇到了一些问题,现整理问题如下。

1. 运行 

pip install lief==0.83

报错:找不到lief
解决方案:
更新源,即在终端下运行 pip install —upgrade
报错:time out

解决方案:

设置超时时间 https://www.cnblogs.com/xiaoduc-org/p/5958973.html
pip --default-timeout=100 install -U lief==0.83
2. 还是找不到lief
原因:lief还没有加入到python底层库中,因此搜索该库源文件,直接安装
解决方案:
google lief python,出来github链接
   在终端下运行 pip install https://github.com/lief-project/packages/raw/lief-master-latest/pylief-0.8.3.dev.zip
3. 运行  python train_ember.py [/path/to/dataset]
找不到pqdm
解决方案:
     google pqdm github,
     在终端下运行 pip install -e git+https://github.com/tqdm/tqdm.git@master#egg=tqdm
注: [/path/to/dataset]是解压后的数据集所在的文件夹(注意:不是单个文件)路径,例如,我将数据集解压后,重命名为ember_data,并且放在了与train_ember.py同一层的目录文件,那么我就执行 python train_ember.py ember_data/
(下同)
4. 上一步安装完后,出现如下提示
ember 0.1.0 requires lightgbm==2.1.0, which is not installed.
ember 0.1.0 has requirement numpy==1.14.2, but you'll have numpy 1.13.3 which is incompatible.
ember 0.1.0 has requirement pandas==0.22.0, but you'll have pandas 0.20.3 which is incompatible.
ember 0.1.0 has requirement tqdm==4.21.0, but you'll have tqdm 4.23.2 which is incompatible.
原因:已经安装的包版本不兼容
解决
重新安装,采用
pip install -v lightgbm==2.1.0
pip install -v numpy==1.14.2
pip install -v tqdm==4.21.0
Conda install pandas=0.22.0
其中pandas采用conda安装的原因是pip一直time out,后来发现conda安装真的是快,建议直接用这个安装。
5. 训练样本
【源说明见下图】

报错:unrecognized arguments
分析原因:文件路径写错
解决方案:
将解压后的数据集(重命名为ember_data)放到train_ember.py同一级目录下,运行python train_ember.py ember_data/
最后结果
6. 运行 classify_binaries.py 文件
【源说明见下图】
[/path/to/model] 是在上一步训练过程生成的model.txt文件,在第五步中我将数据集文件夹放到与train_ember.py同级的地方,同样的,他们也与classify_binaries.py同级
那么,就运行如下代码
python classify_binaries.py -m ember_data/model.txt
【说明】
不知道为什么,model.txt就是看不到,但是通过搜索可以搜到。不过这不影响用代码去找到它。
【运行结果】(有错误)
显示没有二进制文件,问题还是找不到我的model.txt文件
这时候用终端进入ember_dataset目录下,输入 ll (英文字母第12个字母)
可以刷新所有的文件,然后关闭文件夹,重新打开就有了
【再次运行】
终端回到scripts目录下
     python classify_binaries.py -m ember_data/model.txt
还是不行,先跳过此步
7. 继续运行
在scripts目录下(train_ember.py文件)打开终端,进入python3环境下
import ember ember.create_vectorized_features("ember_dataset/") ember.create_metadata(“ember_dataset/")
【说明】
ember_dataset/ 是数据集目录
源教程是   /data/ember/ ,这个路径不是同级下的,因此执行这类代码的时候一定要十分注意。
……
继续执行剩下代码,都没有出现 问题
……
8. 随便放一个exe文件到指定目录,检测它的安全性

源github链接(数据集 + 教程+ 源码):https://github.com/endgameinc/ember

公司博文:https://www.endgame.com/blog/technical-blog/introducing-ember-open-source-classifier-and-dataset

Ember恶意软件数据集的使用教程相关推荐

  1. 教程:Yolo5训练自己的数据集以及安装教程

    教程:Yolo5训练自己的数据集以及安装教程 [一]准备相关文件 1.Anaconda 2.Yolo5 3.权重文件 [二]环境搭建 1.在Anaconda中为Yolo5创建一个环境 2.Yolo5文 ...

  2. EfficientDet训练数据集anchor设定教程101

    EfficientDet训练数据集anchor设定教程101 本文由小肉包老师原创,转载请注明出处,来自腾讯.阿里等一线AI算法工程师组成的QQ交流群欢迎你的加入: 1037662480 上一篇文章我 ...

  3. ROS1结合自动驾驶数据集Kitti开发教程(四)画出自己车子模型以及照相机视野

    注意: 再学习本系列教程时,应该已经安装过ROS了并且需要有一些ROS的基本知识 ubuntu版本:20.04 ros版本:noetic 课程回顾 ROS1结合自动驾驶数据集Kitti开发教程(一)K ...

  4. 使用Python分析姿态估计数据集COCO的教程

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自:AI算法与图像处理 当我们训练姿势估计模型,比较常用的数 ...

  5. 微软发布“史无前例”的恶意软件数据集,设17万奖金征集预测算法

    夏乙 发自 凹非寺 量子位 出品 | 公众号 QbitAI 一个"史无前例"的恶意软件感染数据集亮相了. 这个数据集来自微软,毕竟,他们的重要产品Windows,大概是全球遭受病虫 ...

  6. tensorflow yolov3训练自己的数据集,详细教程

    这个教程是我在自己学习的过程中写的,当作一个笔记,写的比较详细 在github上下载yolov3的tensorflow1.0版本: https://github.com/YunYang1994/ten ...

  7. 使用CycleGAN训练自己制作的数据集,通俗教程,快速上手

    总结了使用CycleGAN训练自己制作的数据集,这里的教程例子主要就是官网给出的斑马变马,马变斑马,两个不同域之间的相互转换.教程中提供了官网给的源码包和我自己调试优化好的源码包,大家根据自己的情况下 ...

  8. Ubuntu16使用自己的数据集训练YOLOV3-tiny教程、技巧及相关资料

    运行环境: Ubuntu16.04 GetForce MX250 4G CUDA 9.0 CuDNN 7.0.5 安装darknet及下载yolov3与训练权重 yolo官网 代码下载 git clo ...

  9. 深度学习:使用UNet做图像语义分割,训练自己制作的数据集,详细教程

    语义分割(Semantic Segmentation)是图像处理和机器视觉一个重要分支.与分类任务不同,语义分割需要判断图像每个像素点的类别,进行精确分割.语义分割目前在自动驾驶.自动抠图.医疗影像等 ...

最新文章

  1. 怎样做反向域名解析?
  2. android地图 demo,Android地图控件之多地图展示
  3. HDU4006(The kth great number)
  4. easyui中的datetimebox 只显示年月日_设置Win10任务栏显示星期几方法
  5. 程序员面试金典 - 面试题 17.11. 单词距离(multimap平衡二叉搜索树)
  6. redis-哈希数据类型
  7. 霍金遗作《十问:霍金沉思录》出版 马化腾作跋纪念
  8. 中国象棋口诀及要领精髓
  9. Fcitx──小企鹅输入法---Ubuntu input method
  10. sql server 按年月日分组
  11. Flutter实战之Sqlite的用法入门
  12. 滴滴数据分析实习SQL笔试题
  13. STM32F072RB 实作笔记(一)- Keil 安装
  14. 【项目】“头脑王者”答题辅助软件
  15. 安全需求可划分为物理安全、网络安全、系统安全和应用安全,下面的安全需求中属于系统安全的是(67),属于应用安全的是(68)。...
  16. 域名该怎样选_怎样选择域名?
  17. 小米 无线 linux 鼠标,便捷好用的小米无线鼠标,据说用完一键退回就离不开了...
  18. Unity简单麻将胡牌算法
  19. LG发布新专利,将为VR头显集成眼球追踪技术
  20. vue即时通讯,一个很好用的插件

热门文章

  1. Android 9.0 SystemUI 锁屏界面禁止状态栏下拉
  2. java数值型转字符型_Java中数值型,字符型及字符串的相互转换
  3. 为Array对象添加一个去除重复项的方法
  4. 苹果手机计算机怎么看以前的记录,苹果手机怎么查找以前的历史通话记录
  5. win10一按右键就闪屏_六种方法教你如何解决win10笔记本屏幕闪烁问题?
  6. PTA Python习题 身份证号码输出性别与出生日期
  7. 如何Troubleshooting当Java Application发生死锁或Hangs
  8. git 新建分支并切换到该分支_Git 从master拉取代码创建新分支 并且再将修改合并到master...
  9. BC20/BC26-opencpu移植cjson,mqtt等注意事项
  10. C语言 求m~n(m<n)之间所有整数的和