C/CPP代码审计

C/CPP代码审计<splint/flawfinder>

原创: 情书吖

图片 1

        
前日偶然接触到了二个代码审计产品,公司制造人是前阿里巴巴(Alibaba)平安总裁。结局的感想就是:代码审计工具这一个行当,果然不是那么随意立足的。

        即使网上五花八门的代码审计工具排名,fortify的主流地位也是未曾人嫌疑的。可是在骨子里运用进程中,面对C/CPP时,商业级的fortify处理结果却并不是很理性。

        废话不多说,进入前几日的核心,今日为我们介绍七款C/CPP代码审计工具的装置和平运动用,安装形式和平台尽管很多,<小编不是懒吗/逃>,在此间为我们介绍最简便易行实用的装置格局和平台选取,希望得以为C/CPP编制程序狗</???>大佬们提供安全支付方面包车型地铁援救。

<splint>

        splint是2个GNU免费授权的
Lint程序,是2个动态检查C语言程序安全缺陷和编排错误的顺序。Splint会进展多样符合规律化检查,包罗未利用的变量,类型分歧,使用未定义变量,不能实施的代码,忽略再次回到值,执行路径未重回,无限循环等不当。

        链接:https://pan.baidu.com/s/1kiufqPElB1zlEv05ZdwiGA 密码:xjyb

        安装:中期可根据要求提供其余平台安装格局,在此只介绍
windows平台下的装置并附上永久下载链接。

        1.先是解压。要是解压到C:/splint-3.1.1则不用调整环境变量。可执行文件在bin下。  

        若是放置任何途径下,要求修改环境变量。在用户变量中充分  

        LARCH_PATH – <你安装splint的路径>/lib   

        LCLIMPORTDIR – <你安装splint的路径>/imports   

        include – 系统include文件所在的目录。

     
 (其实include那一个参数是从谷歌贰个论坛下找的,说的很模糊,实验的结果便是include参数指向了VC++6.0下的include,,不知底这么做是小聪明依旧蠢,欢迎指正
 /逃)

        2.在用户变量Path中添加splint.exe所在的门道,方便现在调用。  

        3.使上述的改动生效:注销当前用户然后再一次登录。

图片 2

 

图片 3

        附上成果和-help消息,客户体验说下,该工具更倾向于检验语法错误,其实那几个作用编写翻译器也在做,可是角度区别,splint的角度是平安支出角度。

        另外值得吐槽的时,倘若你include了自定义头,splint会直接报错,当然那也是的的确确可以领会的。

 

<flawfinder>

        flawfinder让自个儿先吐槽两句平复下内心,其实网上有各样安装包,当然官方也有,好端端的下载,解压,安装,,,然后你就会意识各个合法没提到的依靠难点</???像本人这么蠢的还有仨,官方并未考虑到啊???>

        flawfinder的优势是词法扫描和分析,内嵌了一些纰漏数据库,如缓冲区溢出、格式化串漏洞等,扫描快,根据代码中漏洞的风险等级对漏洞实行分割,能够火速找到存在的标题,误报较高。

        在运作了各样平台之后,windows/parrot/kali/centos。。。。。。最后,居然Ubuntu的官方源里有安装包。

        喏,就这一句话~

        sudo apt-get install flawfinder

        可是吐槽这么多,并不曾让在读的您少走弯路的意思,只是提供了最偷懒的途径。笔者也喜好走弯路,走别人没走过,没走通的路,只怕这几个历程才是大家真的享受的啊。

        咳咳,正题!

        图片 4

 

图片 5

        截不全就截不全吧,我们可从-help中见到它的大部效益了。

        那里说下客户体验:算的上伪商业级的代码审计工具了,换句话说,误报概率依旧挺大的,不过结果进行了很好的归类总结,并拓展安全风险等级评估,命令行界面做到那种程度也是人心了。

        喏,工具介绍就到那边呀。如有不足,欢迎指正。

 

 

自小编能够弱弱的丢个村办微信公众号么,

借使你们喜欢黑客,喜欢parrotsec,喜欢三遍元,期待认识大家。

才不是什么萝莉控,只是欣赏的女孩纸碰巧是萝莉罢了,哼~

 图片 6

相关文章