系统级程序设计项目-代码漏洞检测
1.学习CMU教授有关用于代码缺陷检测的数据集生成的论文以及sa-bAbI项目来实现自动生成有缺陷的代码数据集。
2.学习CWE/CVE有关漏洞知识。修改sa-bAbI项目中的代码,生成其他类型的漏洞的数据集。
3.寻找一个开源软件,再利用AI系统进行检测。
论文:Towards security defect prediction with AI
源代码及方法介绍:sa-bAbI项目
第一周:sa-bAbI项目学习(11.27-12.4)
- 实验工具:VMware workstation 14 pro、Ubuntu镜像文件。
- 实验环境的搭建:搭建虚拟机,安装Ubuntu操作系统,安装docker
1. 完成虚拟机VMWare Workstation 14 pro的搭建,完成Ubuntu操作系统的安装。
2. 学习Linux终端的基本操作,完成docker的安装。
docker相关知识学习:https://blog.csdn.net/fei2636/article/details/79384969
docker安装3. 下载sa-bAbI项目,并根据README文件进行Quickstart。
⑴执行$ docker-compose build
的时候报错如下:
原因:未将当前用户加入到docker组中。
方法:输入$ sudo gpasswd -a ${USER} docker
,将当前用户加入到docker组中;切换用户至root,再切换回来,可以成功执行$ docker-compose build
。
经过漫长的等待,终于执行完成,然后可以创建working目录。
⑵生成数据集的时候报错如下:
原因:暂时未知,可能与路径包含中文有关。
方法:重新更换sa-bAbI项目在不含有中文的路径中,重新测试,成功。
4. 总结:sa-bAbI项目执行步骤
⑴将当前用户加入到docker组,切换一次用户,再切换回来,开启docker服务。
⑵执行语句bash sa_e2e.sh <working_dir> <num_instances>
生成数据集。
网友评论