FOne CodeSec是南京富士通南大软件技术有限公司开发的代码泄露检测系瞎桐脊统,该系统采用自然语言处理等人工智能技术,对企业内源代码进行自动解析后,定期检测代码是否磨渗被泄露到互联网,可以检测的代码类型包括:C/C++、Java、Python、Javascript、PHP等。系统定期执行,一旦发现代码泄露会立刻报警,另外系统采用轮誉Docker部署,部署起来很简单。可以参考官网:网页链接
目前我经常用的漏洞检测工具主要就是爱内测,因为爱内测会根据应用特性,对程序机密性会采取不同程度不同方式的检测,检测项目包括代码是否混淆,DEX、so库文件是否游桐保护,程序签名、权限管理是否完整等;组件安全检测主要针对Activity、Broadcast Receiver、Service、WebView、Intent等是否存在漏神瞎坦洞,并给出针对性建议;数据安全会全面检测APP存在的数据泄漏漏洞和输出层、协议层等所有涉及数据安全的漏洞,确保APP里那些可能导致帐号泄露的漏洞被全部检测神肢出。很高兴为您解答。怎样检测内存泄露 :
检测内存泄漏的关键是要能截获住对分配内存和释放内存的函数的调用。截获住这两个函数,我们就能跟踪每一块内存的生命周期,比如,每当成功的分配一块内存后,就把它的指针加入一个全局的list中;每当释放一块内存,再把它的指针从list中删除。这样,当程序结束的时候,list中剩余的指针就是指向那些没有被释放的内存。这里只是简单的描述了检测内存泄漏的基本原理,详细的算法可以参见Steve Maguire的<<Writing Solid Code>>。
如果要检测堆内存的泄漏,那么需要截获住malloc/realloc/free和new/delete就可以了(其实new/delete最终也是用malloc/free的,所以只要截获前面一组即可)。对于其他的泄漏,可以采用类似的方法,截获住相应的分配和释放函数。比如,要检测BSTR的泄漏,就需要截获SysAllocString/SysFreeString;要检测HMENU的泄漏,就需要截获CreateMenu/ DestroyMenu。(有的资源的分配函数有多个,释放函数只有一个,比如,SysAllocStringLen也可以亩槐用来分配BSTR,这时就需要截获多个分配函数)
在Windows平台下,检测内存泄漏的工具常用的一般有三种,MS C-Runtime Library内建的检测功能陪耐厅;外挂式的检测工具,诸如,Purify,BoundsChecker等;利用Windows NT自带的Performance Monitor。这三种工具各有优缺点芦隐,MS C-Runtime Library虽然功能上较之外挂式的工具要弱,但是它是免费的;Performance Monitor虽然无法标示出发生问题的代码,但是它能检测出隐式的内存泄漏的存在,这是其他两类工具无能为力的地方。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)