源代码审计工具之:SonarQube
SonarQube是源码一个开源的代码分析平台,用于持续分析和评估项目源代码的审计质量。它能检测出项目中的源码重复代码、潜在bug、审计代码规范和安全性漏洞等问题,源码并通过web UI展示结果。审计iappui界面源码
1. Sonar简介
1.1 SonarQube是源码什么?
1. 代码质量和安全扫描和分析平台。
2. 多维度分析代码:代码量、审计安全隐患、源码编写规范隐患、审计重复度、源码复杂度、审计代码增量、源码测试覆盖率等。审计
3. 支持+编程语言的源码代码扫描和分析,包括Java、Python、C#、JavaScript、tpshop分销 源码Go、C++等。
4. 涵盖了编程语言的静态扫描规则:代码编写规范和安全规范。
5. 能够与代码编辑器、CI/CD平台完美集成。
6. 能够与SCM集成,可以直接在平台上看到代码问题是由哪位开发人员提交。
7. 帮助程序猿写出更干净、更安全的代码。
静态扫描主要针对开发人员编写的源代码。
通过定义好的代码质量和安全规则,对开发人员编写的代码进行扫描和分析。
将分析的结果多维护的呈现出来,以方便开发人员进行代码的优化和规范编写。
1.2 SonarQube的各个功能:
1.2.1 代码可靠性
1. BUG检测
2. 设置需要的代码标准
3. 代码异味
4. 代码安全性
5. 对于开发的各个路径进行检测
1.2.2 软件安全性
1. Security Hotspots: 代码存在安全问题的部分
2. Vulnerabilities: 代码是否存在漏洞
1.3 SonarQube如何工作?
Sonar静态代码扫描由两部分组成:SonarQube平台和sonar-scanner扫描器。
SonarQube: web界面管理平台。
1)展示所有的项目代码的质量数据。
2)配置质量规则、建材app源码管理项目、配置通知、配置SCM等。
SonarScanner: 代码扫描工具。
专门用来扫描和分析项目代码。支持+语言。
代码扫描和分析完成之后,会将扫描结果存储到数据库当中,在SonarQube平台可以看到扫描数据。
SonarQube和sonarScanner之间的关系:
2 检测
Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量。通过插件形式,可以支持包括Java、C#、C/C++、PL/SQL、Cobol、Idea javax源码JavaScript、Groovy等等二十几种编程语言的代码质量管理与检测。
2.1 Rules提示
2.1.1 Rule界面
2.1.2 Rule正确实例提示
2.2 糟糕的复杂度分布
文件、类、方法等,如果复杂度过高将难以改变,这会使得开发人员难以理解它们,且如果没有自动化的单元测试,对于程序中的任何组件的改变都将可能导致需要全面的回归测试。
2.3 重复
显然程序中包含大量复制粘贴的代码是质量低下的,Sonar可以展示源码中重复严重的地方。
2.4 缺乏单元测试
Sonar可以很方便地统计并展示单元测试覆盖率。
2.5 没有代码标准
Sonar可以通过PMD、CheckStyle、Findbugs等等代码规则检测工具规范代码编写。
2.6 没有足够的或者过多的注释
没有注释将使代码可读性变差,特别是当不可避免地出现人员变动时,程序的资料管理源码可读性将大幅下降,而过多的注释又会使得开发人员将精力过多地花费在阅读注释上,亦违背初衷。
2.7 潜在的bug
Sonar可以通过PMD、CheckStyle、Findbugs等等代码规则检测工具检测出潜在的bug。
2.8 糟糕的设计(原文Spaghetti Design,意大利面式设计)
通过Sonar可以找出循环,展示包与包、类与类之间的相互依赖关系,可以检测自定义的架构规则;通过Sonar可以管理第三方的jar包,可以利用LCOM4检测单个任务规则的应用情况,检测耦合。
3. Sonar组成
4. Sonar集成过程
开发人员在他们的IDE中使用SonarLint运行分析本地代码。
开发人员将他们的代码提交到代码管理平台中(SVN、GIT等),
持续集成工具自动触发构建,调用SonarScanner对项目代码进行扫描分析,
分析报告发送到SonarQube Server中进行加工,
SonarQube Server加工并且保存分析报告到SonarQube Database中,通过UI显示分析报告。
ç½ç»å®å ¨ä¸ä¸å¦ä»ä¹
ç½ç»å®å ¨ä¸ä¸ä¸»è¦å¦PKIææ¯ãå®å ¨è®¤è¯ææ¯ãå®å ¨æ«æææ¯ãé²ç«å¢åçä¸ææ¯ãå ¥ä¾µæ£æµææ¯ãæ°æ®å¤ä»½ä¸ç¾é¾æ¢å¤ãæ°æ®åºå®å ¨ãç®æ³è®¾è®¡ä¸åæãç½ç»å®å ¨æ¯æç½ç»ç³»ç»ç硬件ã软件åå ¶ç³»ç»ä¸çæ°æ®åå°ä¿æ¤ï¼ä¸å å¶ç¶çæè æ¶æçåå èéåå°ç ´åãæ´æ¹ãæ³é²ï¼ç³»ç»è¿ç»å¯é æ£å¸¸å°è¿è¡ï¼ç½ç»æå¡ä¸ä¸æãç½ç»å®å ¨ä¸ä¸åæ¯
第ä¸é¨åï¼åºç¡ç¯ã主è¦å æ¬å®å ¨å¯¼è®ºãå®å ¨æ³å¾æ³è§ãæä½ç³»ç»åºç¨ã计ç®æºç½ç»ãHTML&JSãPHPç¼ç¨ãPythonç¼ç¨åDockeråºç¡ç¥è¯ã让åçº§å ¥é¨ç人å对ç½ç»å®å ¨åºç¡ææäºè§£ã
第äºé¨åï¼Webå®å ¨ãå å«Webå®å ¨æ¦è¿°ãWebå®å ¨åºç¡ãWebå®å ¨æ¼æ´åé²å¾¡åä¼ä¸Webå®å ¨é²æ¤çç¥æ¹é¢çå®å ¨ç¥è¯ã让åå¦è å ¥é¨å¦ä¹ Webå®å ¨ç¥è¯ã
第ä¸é¨åï¼æ¸éæµè¯ãè¿ä¸ªé¶æ®µå æ¬çå 容æï¼æ¸éæµè¯æ¦è¿°ãæ¸éæµè¯ç¯å¢æ建ãæ¸éæµè¯å·¥å ·ä½¿ç¨ãä¿¡æ¯æ¶éä¸ç¤¾å·¥æå·§ãWebæ¸éãä¸é´ä»¶æ¸éåå ç½æ¸éçç¥è¯ã
第åé¨åï¼ä»£ç 审计ãå æ¬äºä»£ç 审计æ¦è¿°ãPHP代ç 审计ãPython代ç 审计ãJava代ç 审计ãC/C++代ç 审计å代ç 审计å®æçç¥è¯ï¼æ·±å ¥å¦ä¹ å类代ç 审计çç¥è¯ã
第äºé¨åï¼å®å ¨å åºãè¿ä¸ªé¶æ®µçå¦ä¹ ï¼å¯ä»¥æ·±å ¥å¦ä¹ ç½ç»åè®®å®å ¨ãå¯ç å¦ååºç¨ãæä½ç³»ç»å®å ¨é ç½®çæ¹é¢çéè¦ç¥è¯ç¹ã
ç½ç»å®å ¨ä¸ä¸åæ¯éçæ°ä¸ä»£ä¿¡æ¯ææ¯çåå±ï¼ç½ç»å°æ´å æ·±å ¥å家ä¸æ·ï¼èå ¥å°ç¤¾ä¼çæ´»åç»æµåå±çå个æ¹é¢ãå¨æªæ¥ï¼æ 论æ¯å¨ç©èç½ã人工æºè½çæ°å ´é¢åè¿æ¯å¨ä¼ ç»è®¡ç®æºç§å¦ææ¯é¢åï¼ç½ç»å®å ¨æ¯å§ç»ä¸å¯ç¼ºå°çéè¦ç»æé¨åï¼å¨æ´ä¸ªç½ç»å®å ¨äº§ä¸ä¸å æ举足轻éçå°ä½ã
æ£æ¯ç±äºç½ç»å®å ¨äººæ缺å£å¾å¤§ï¼æ以ç½ç»ç©ºé´å®å ¨ä¸ä¸æä¼äºå¹´è®¾ç«ï¼å¹¶ä¸è®¾ç«ä¹åï¼å¨ä¸å¤§æ¹âåä¸æµâ建设é«æ ¡åå ¶ä»éç¹é¢æ ¡å»ºç«äºç 究çä¸ä¸ç 究æ¹åãå æ¤ï¼ç½ç»å®å ¨ä¸ä¸çå°±ä¸åæ¯åå广éï¼æ¯ä¸ä¸ªä¸æä¸æ£çæé³è¡ä¸ï¼ä¹æ¯ä¸ºæ°ä¸å¤çèä¸å¯¿å½å¾é¿ç计ç®æºç±»å·¥ç§ã
SecWiki周刊(第期)
本期SecWiki周刊聚焦于安全领域,特别强调了在Windows/Linux操作系统中的提权exp技术,以及如何利用这些技术进行安全技能提升。文章还探讨了破解路由器、物理路径搜索工具、正则表达式应用、穿越边界技术、nessus插件的更新,以及白帽子相关的法规和标准。内容涵盖从基础安全到高级渗透技术,包括ThinkPHP源码审计、挂马与检测、钓鱼技术、Nginx配置优化、信息收集、反序列化等关键领域。此外,文章还涉及了漏洞利用工具、白帽法规、Nessus插件经验分享、白帽法规、ThinkPHP源码审计、getsploit等工具的使用,以及网站物理路径搜索、边界穿越、安全加固规范等技术。
在安全资讯部分,文章提到了多个重要事件和报告,如WannaCry病毒的持续影响、NSA关于俄罗斯黑客活动的报告、FBI悬赏通缉的七大网络罪犯名单、中国公布的首批接受安全审查的网络设备名单等。安全技术板块则深入探讨了内核exploit、安全技能树、路由器破解方法、网站物理路径搜索工具、正则学习、黑客入侵应急分析、基线检查表与安全加固规范、边界穿越技巧、高性能分布式爬虫工具(AZSpider)、Nessus插件更新经验、白帽子法规、ThinkPHP源码审计、漏洞搜索与下载工具(getsploit)、渗透技巧与互联网挂马检测、钓鱼方法分析、内核级防火墙构建、OWASP检查列表、CTF比赛中关于ZIP的总结、Nginx配置安全案例、漏洞修复方案等。
文章还涉及到渗透技巧、程序降权启动、互联网挂马检测技术、自动化域渗透工具(DeathStar)、时间定位漏洞利用的分析、macOS应用HTTPS流量监听、伪基站监控系统搭建、两种钓鱼方法、大数据与机器学习的Web异常参数检测系统、Mac逆向工程、威胁情报市场分析、工业物联网安全态势报告、网络安全会议视频、病毒分析报告、HERCULES绕过杀软技术、安全赛事官方总结、服务端注入问题、splunk机器数据分析、WebKit漏洞利用、HTA和Scriptlet文件处理器漏洞、沙盒绕过技术、MOTS攻击技术分析、蓝牙安全研究、安卓恶意软件分析、内核驱动解包、V8 OOB写入漏洞、Python SOCKS4反向代理、通用安全事件格式(sigma)等技术与方法。
SecWiki周刊旨在为安全领域专业人士和爱好者提供最新的资讯、专题和导航,通过高质量的聚合与评论,帮助读者深入了解和掌握安全领域的最新动态和最佳实践。
代ç 审计ç代ç 审计çå®ä¹
顾åæä¹å°±æ¯æ£æ¥æºä»£ç ä¸çå®å ¨ç¼ºé·ï¼æ£æ¥ç¨åºæºä»£ç æ¯å¦åå¨å®å ¨éæ£ï¼æè æç¼ç ä¸è§èçå°æ¹ï¼éè¿èªå¨åå·¥å ·æè 人工审æ¥çæ¹å¼ï¼å¯¹ç¨åºæºä»£ç éæ¡è¿è¡æ£æ¥ååæï¼åç°è¿äºæºä»£ç 缺é·å¼åçå®å ¨æ¼æ´ï¼å¹¶æä¾ä»£ç 修订æªæ½å建议ã
代ç 审计æ¯ä¸ç§ä»¥åç°ç¨åºé误ï¼å®å ¨æ¼æ´åè¿åç¨åºè§è为ç®æ çæºä»£ç åæã软件代ç 审计æ¯å¯¹ç¼ç¨é¡¹ç®ä¸æºä»£ç çå ¨é¢åæï¼æ¨å¨åç°é误ï¼å®å ¨æ¼æ´æè¿åç¼ç¨çº¦å®ã å®æ¯é²å¾¡æ§ç¼ç¨èä¾çä¸ä¸ªç»æé¨åï¼å®è¯å¾å¨è½¯ä»¶åå¸ä¹ååå°é误ã CåC++æºä»£ç æ¯æ常è§ç审计代ç ï¼å 为许å¤é«çº§è¯è¨å ·æè¾å°çæ½å¨æåæ»å»çåè½ï¼æ¯å¦Pythonã
2024-11-23 08:12
2024-11-23 07:54
2024-11-23 06:55
2024-11-23 06:24
2024-11-23 05:51