C C++源代码安全分析工具调研

【log4】c++日志工具之——log4cpp 1、log4cpp概述 Log4cpp是一个开源的C++类库,它提供了C++程序中使用日志和跟踪调试的功能,它的优点如下: 提供应用程序运行上下文,方便跟踪调试; 可扩展的、多种方式记录日志,包括命令行、文件、回卷文件、内存、syslog服务器、Win事件日志等; 可以动态控制日志记录级别,在效率和功能中进行调整; 所有配置可以通过配置文件进行动态调整; 多语言支持,包括Java(log4j),C++(log4cpp、log4cplus),C(log4c),python(... 阅读详情

Flawfinder
http://sourceforge.net/projects/flawfinder/

Flawfinder is a program that examines C source code and reports possible security weaknesses

(``flaws'') sorted by risk level. It's very useful for quickly finding and removing some security

problems before a program is widely released.

Flawfinder works on Unix-like systems today (it's been tested on GNU/Linux), and it should be easy to

port to Windows systems. It requires Python 1.5 or greater to run (Python 1.3 or earlier won't work).

 


CppCheck
http://cppcheck.sourceforge.net/
http://sourceforge.net/apps/mediawiki/cppcheck/index.php?title=Main_Page

Static analysis of C/C++ code. Checks for: memory leaks, mismatching allocation-deallocation, buffer

overrun, and many more. The goal is 0% false positives. See the wiki for more information.

规则:
http://sourceforge.net/apps/mediawiki/cppcheck/index.php?title=ListOfChecks
包括:变量使用、边界检查、类检查、内存泄漏检查等

支持命令行

Jenkins插件:
https://wiki.jenkins-ci.org/display/JENKINS/Cppcheck+Plugin

有Eclipse、Visual Studio的插件

 


Splint
Splint - Secure Programming Lint
Splint is a tool for statically checking C programs for security vulnerabilities and coding mistakes.

With minimal effort, Splint can be used as a better lint. If additional effort is invested adding

annotations to programs, Splint can perform stronger checking than can be done by any standard lint.

http://www.splint.org
Windows版本下载:
https://github.com/maoserr/splint_win32/downloads

注意添加几个环境变量:
LARCH_PATH - path to search for splint libraries and initializations files. Typically, this should

be: .;<directory where you installed splint>\lib
LCLIMPORTDIR - directory containing lcl imports files. Typically, this should be: <directory where

you installed splint>\imports
include - the pathname used to find system include files (e.g., stdio.h should be found on this

path). If you have installed a compiler, it probably sets this already

Set up your command PATH to include the directory containing splint.exe, or move the binary to a

directory on your command path.

不支持C++?!

 

 

RATS
RATS被Fortify收购了,Fortify被HP收购
支持C, C++, Perl, PHP 和Python
RATS is a tool for scanning C, C++, Perl, PHP and Python source code and flagging common security

related programming errors such as buffer overflows and TOCTOU (Time Of Check, Time Of Use) race

conditions.
As its name implies, the tool performs only a rough analysis of source code. It will not find every

error and will also find things that are not errors. Manual inspection of your code is still

necessary, but greatly aided with this tool.

需要额外安装eXpat:http://expat.sourceforge.net/
并且把rats和expat加入PATH环境变量

查看使用方法帮助:
rats -help

 


ITS4
http://www.cigital.com/its4/
Cigital developed ITS4 to help automate source code review for security. ITS4 is a simple tool that

statically scans C and C++ source code for potential security vulnerabilities. It is a command-line

tool that works across Unix and Windows platforms.
ITS4 scans source code, looking for function calls that are potentially dangerous. For some calls,

ITS4 tries to perform some code analysis to determine how risky the call is. In each case, ITS4

provides a problem report, including a short description of the potential problem and suggestions on

how to fix the code.

需要固定在C:\its4\目录工作
好像一次只能扫描一个文件?!
cigital公司似乎不怎么维护它了

 


 

C/C++之cpp变exe C/C++之cpp变exe 上节我们讲了C/C++的命名空间。 本节我们来介绍如何把源代码转换成软件。也就是标题所说的cpp变exe。 大家在使用vs等IDE的时候是不是发现很方便,只要写完源码,源码没错误的情况下,点一下生成就会得到可执行文件(exe)。 但是大家有没有想过其中的原理是怎么样的呢。所以本节通过这一点来展开做介绍。 点击生成解决方案就可以快速获得可执行文件,细心的同学可能会发现项目的Debug或者Release文件夹中,会有需多奇怪后缀的文件。例如我拿上节的方案Debug目录中的文 阅读详情

相关推荐

有什么好用的C/C++源代码混淆工具?

iOS加固保护是直接针对ios ipa二进制文件的保护技术,可以对iOS APP中的可执行文件进行深度混淆、加密。使用任何工具都无法逆向、破解还原源文件。对APP进行完整性保护,防止应用程序中的代码及资源文件被恶意篡改。Ipa Guard通过修改 ipa 文件中的 macho 文件中二进制数据(代码模块配置)进行操作,无需源码。不限定开发技术平台。支持oc,swift,cocos2d-x、unity3d、quick-cocos,html5 ,react native等等各种开发技术。

2301_79527134的博客 1204

C++ security issue analyze

https://sploitfun.wordpress.com/about-2/ “Happiness is only real when shared” – Into the wild http://stackoverflow.com/questions/44799/preventing-command-line-injection-attacks?answertab=oldest#tab-...

weixin_30312563的博客 143

C/C++代码整理源代码

C/C++代码整理源代码作者:Y___Y联系:yinwei_88@sina.com        对于程序员来说,经常需要到网上查找资料,尤其是源代码,但往往由于网页排版或者其他的原因,导致copy下来的代码有时会相当的乱,手工整理需要花大量的时间,把时间花在这些无聊的工作上,无疑是对宝贵的时间的巨大浪费。笔者深受其苦,而且笔者也不喜欢用其他的辅助工具,所以花了点时间,编了一个C++源代码整理

Y___Y的专栏 4680

网络安全工具100套

它可以作为TCP中继(单次触发:one-shot或者daemon(Internet中用于邮件收发的后台程序))、作为基于daemon的动态Sockes化(socksifier)、作为Unix平台上sockets的shell接口、作为IP6中继、将面向TCP的程序重定向成串行线路(Serial Line)程序、或者建立用来运行客户端或服务器带有网络连接的shell脚本相关安全环境(su和chroot)。它可以作为UNIX的一个核心模块,也可以不嵌入核心,强烈推荐将其作为UNIX的核心模块。

xv66666的博客 3443

50个c/c++源代码网站

50个c/c++源代码网站 C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码。这份清单提供了源代码的链接以及它们的小说明。这不是一个完整的清单,希望大家一起补充完善它,谢谢! 1、http://snippets.dzone.com/tag/c/ --数以千计的有用的C语言源代码片段 2、http://www.hotscripts.co...

weixin_45820912的博客 1348

Linux环境下代码安全审计工具的综合应用

本文还有配套的精品资源,点击获取 简介:代码安全审计是IT行业中确保软件质量和安全的关键步骤。本文深入探讨了四款Linux环境下的代码安全审计工具:RATS、LSAT、FlawFinder和Cppcheck,包括它们的功能、使用方法以及如何结合使用这些工具来提升代码安全性。RATS检测C和Perl源码中的潜在安全漏洞,LSAT审计Linux内核源码以评估安全性,FlawFi...

weixin_36231030的博客 1778

网络安全人士必备的30个安全工具

Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是截取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。Metasploit是一个免费的、可下载的框架,通过它可以很容易地获取、开发并对计算机软件漏洞实施攻击。它本身附带数百个已知软件漏洞的专业级漏洞攻击工具。当H.D. Moore在2003年发布Metasploit时,计算机安全状况也被永久性地改变了。

小司机的奥拓 4176

Windows via C/C++ source code

Windows via C/C++ 随书代码

50个C/C++源代码网站

C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码 。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建 议,以进一步加强这方面的清单。  添加:http://www.boost.org/ 1、http://snippets.dzone.com/tag

nuoshueihe的专栏 5482

K-means在关键词聚类中的尝试

K-means在文本聚类中的尝试 K-means算法是无监督的聚类算法。它的算法思想是:先随机选取K个对象作为初始的聚类中心。然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。一旦全部对象都被分配了,每个聚类的聚类中心会根据聚类中现有的对象被重新计算。 K-means算法的关键点在于: 初始k个聚类中心的选择 距离的计...

BigPig_LittleTail的博客 5573

从DeepMimic到虚拟偶像:用动作捕捉数据训练AI跳舞的完整流程(附Blender插件配置)

本文详细介绍了如何利用DeepMimic的深度强化学习框架,将动作捕捉数据转化为虚拟偶像或游戏角色的舞蹈动作。从核心的模仿学习理念、PyBullet环境搭建、策略网络与奖励函数设计,到数据处理、训练技巧(如参考状态初始化),最后讲解了如何将训练好的AI模型集成到Blender和Unity等工具中,实现从数据到实时驱动角色的完整流程。

weixin_29054399的博客 504

c/c++源代码网站

http://snippets.dzone.com/tag/c/ --数以千计的有用的C语言源代码片段  http://www.hotscripts.com/category/c-cpp/scripts-programs/ Hotscripts --提供数以百计的C和C++脚本和程序。所有程序都分为不同的类别。  http://www.planetsourcecode.com/vb/default...

平凡 937

从‘数字分身’到‘数字员工’:华为云MetaStudio如何重塑企业生产力?

本文探讨了华为云MetaStudio如何通过数字人技术重塑企业生产力,从数字分身到数字员工的转变。通过多模态AIGC技术,MetaStudio在金融、零售和制造业等多个行业实现高效应用,显著提升服务质量和运营效率。数字员工不仅降低成本,更成为企业增长的新引擎。

weixin_29083475的博客 450

值得收藏的50个学习C语言的源代码网站

50个c/c++源代码网站C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建议,以进一步加强这方面的清单。 1、http://snippets.dzone.com/tag/c/ –数以千计的有用的C语言源代码片

焱少的博客 1万+

一文讲透 .claude/ 文件夹:Claude Code 团队配置指南和最佳实践

本文系统梳理了ClaudeCode配置框架,旨在解决实际落地中的常见困惑。文章从五层作用域体系(组织策略、命令行参数、本地覆盖、项目级、用户级)切入,详细解析了CLAUDE.md、rules、skills、agents等核心组件的定位与配合关系。重点强调了"确定性规则"与"概率性建议"的分层设计:权限控制和安全边界应通过settings.json和hooks实现,而工作约定和编码规范适合放在CLAUDE.md。文中提供了可直接套用的最小配置方案,并总结了10大常见踩坑

977

【Unity】【模型】【AI建模】如何将AI生成的GLB格式3D模型文件导入Unity

本文介绍了一个将AI工具自动生成的GLB格式3D模型文件转换成fbx模型文件导入Unity的步骤。

O青草O的博客 Unity和游戏制作知识分享 1357

优秀C/C++源代码网站

最近在网上收集到一些优秀的C/C++源代码网站,特此记录下来,以供以后查询需要时用到和各位同仁参阅!

xbmoxia的专栏 7186

3. Matérn协方差模型与随机偏微分方程

对应的高斯马尔可夫随机场 (GMRF)可以通过使用某种随机偏微分方程(SPDE)明确构造,当由高斯白噪声驱动时,随机偏微分方程的解是具有 Matérn 协方差函数的高斯场(GF)

weixin_40614311的博客 1745

50个国内外最优秀的C/C++源代码网站(网站)

C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建议,以进一步加强这方面的清单。 1、 http://snippets.dzone.com/tag/c/ --数以千计的有用的C语言源代码片段 2、 http://...

qq_41715321的博客 1万+

Vue2 - 最新详细实现接入天地图详细配置流程及示例代码教程,提供获取用户当前定位的城市名称及省市区数据、精准经纬度信息、IP属地定位、地图搜索标点等示例,解决天地图跨域报错/页面白屏/定位不准问题

vue2,nuxt2,天地图,使用教程,vue接入国家天地图,定位api,ip属地定位,获取用户当前位置数据,省市区,地图不显示,白屏,报错,vue2如何使用天地图,地图选点,cors跨域,白名单设置了还是不行,vue项目调用天地图api实现定位,Vue2中使用天地图,详细教程,天地图申请密钥key教程,经纬度,经纬度不准确,一直定位北京,定位在北京不准怎么办,nuxt项目天地图,网站,网页,h5页面,地图显示不全,获取当前定位,如何使用天地图,拿到客户ip地址定位城市名称,距离计算,实时搜索地址逆解析,天

🏆 前端领域优质创作者 5325

CAPL通过lookupSignal和DBLookup获取DBC信号的属性信息

CAPL通过lookupSignal和DBLookup获取DBC信号的属性信息以及一些相关问题

天赐好车的博客 2885

C/C++源代码的网站

C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建议,以进一步加强这方面的清单。 1、http://snippets.dzone.com/tag/c/ --数以千计的有用的C语言源代码片段 2、http://

sjqhhxx的博客 509

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

上一篇: LoadRunner 12 和 UFT\QTP 12在HP官网已经可以开始下载了
下一篇: BackTrack开启ssh
TIB
TIB
博客等级 码龄19年 2879粉丝 957原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值