论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com技术社区
»
论坛
›
大数据
›
数据仓库与分析
›
Java常用安全编码的规范整理及工具
Java常用安全编码的规范整理及工具
圆咕噜咕噜
论坛元老
|
2025-4-11 18:25:51
|
显示全部楼层
|
阅读模式
楼主
主题
1497
|
帖子
1497
|
积分
4491
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
对Java安全编码的重要规范及要求的一些整理:
一、输入验证与数据校验
外部输入校验
对所有外部输入(如用户输入、文件、网络数据)进行合法性校验,采用白名单机制限制输入内容范围 。
校验前对输入数据做归一化处理(如利用java.text.Normalizer),防止字符转义绕过校验 。
防止注入攻击
禁止直接拼接外部输入天生SQL语句,应利用PreparedStatement或存储过程 。
避免用外部输入拼接XML或命令,需通过正则表达式或安全API过滤特殊字符 。
路径安全处理
对文件路径进行标准化处理(如利用getCanonicalPath()),避免相对路径(.或..)导致的路径遍历毛病 。
二、异常与日志安全
异常处理
禁止在异常信息中暴露敏感数据(如数据库毗连信息、堆栈细节),仅记载必要日志。
日志规范
避免记载未净化的用户输入,防止日志注入攻击 。
禁止在日志中保存口令、密钥等敏感信息 。
三、资源与IO操纵
文件与流管理
临时文件利用后需立即删除,避免长期驻留 。
对ZipInputStream等压缩流中的条目做大小限制,防止解压炸弹攻击 。
避免在共享目次操纵文件,创建文件时需显式设置访问权限(如POSIXFilePermission) 。
缓冲区安全
禁止将非只读的Buffer对象(如通过wrap()或duplicate()创建)暴露给不受信任的代码,应利用asReadOnlyBuffer() 。
四、序列化安全
敏感数据掩护
敏感字段需用transient关键字标记,或通过自定义writeObject()方法避免序列化 。
序列化传输敏感数据前需进行签名和加密 。
反序列化防护
避免直接反序列化不可信数据,防止利用反序列化毛病执行恶意代码 。
五、加密与算法
加密算法选择
利用强加密算法(如AES-256、RSA-2048、SHA-256),禁用DES、SHA-1等弱算法。
密钥管理
密钥禁止硬编码在代码中,推荐利用安全的密钥管理体系 。
六、其他安全步调
并发与线程安全
对共享资源利用线程安全类(如ConcurrentHashMap)或同步机制,避免竞态条件 。
情况变量利用
避免依靠情况变量(System.getenv()),优先利用体系属性(System.getProperty())
代码安全审计工具的分类及核心功能概览
综合开源与贸易工具特点:
一、开源工具
SonarQube
实用语言
:Java、C#、Python、JavaScript等20+语言
功能特点
:提供代码质量管理、毛病检测、重复代码分析,支持与CI/CD集成,社区版开源。
典范场景
:实用于企业级代码质量连续监控,如Google、eBay等大型项目。
OWASP ZAP
实用语言
:Web应用(语言无关)
功能特点
:动态安全扫描工具,支持主动化毛病检测(如XSS、SQL注入),提供API安全测试。
二、贸易工具
Fortify SCA
实用语言
:Java、C/C++、.NET等
功能特点
:静态代码分析贸易工具,支持跨语言数据流分析,集成毛病修复建议。
典范场景
:金融、政府等高安全需求领域。
Checkmarx
实用语言
:Java、JavaScript、Python等
功能特点
:基于深度学习的毛病检测,支持复杂业务逻辑毛病识别,提供交互式修复指导。
Veracode
实用语言
:Java、C/C++、PHP等
功能特点
:云端SAST平台,支持二进制分析和依靠项扫描,提供优先级毛病列表。
Coverity
实用语言
:C/C++、Java、C#等
功能特点
:高精度静态分析工具,擅长发现内存走漏、并发题目,支持大规模代码库。
三、工具对比
工具范例
代表工具
核心优势
实用场景
开源SonarQube机动扩展、社区支持中小团队、预算有限项目贸易Fortify SCA、Checkmarx深度分析、企业级支持高安全要求的金融/政府项目
四、选型建议
开源工具
:适合预算有限、需快速启动的项目,推荐SonarQube(综合管理)或OWASP ZAP(动态扫描)。
贸易工具
:优先选择Fortify SCA(多语言支持)或Checkmarx(复杂毛病检测)以满足深度审计需求。
工具选择需联合项目规模、技能栈和安全品级,建议联合主动化扫描与人工检察以提高审计覆盖率。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复
使用道具
举报
0 个回复
正序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
发新帖
回复
圆咕噜咕噜
论坛元老
这个人很懒什么都没写!
楼主热帖
CSRF漏洞详细解读
超融合市场,谁能当老大?
通过Go语言创建CA与签发证书 ...
【python二级-练习题】
内网渗透之Windows认证(二) ...
09、openfoam案例之圆柱绕流
【第86题】JAVA高级技术-网络编程5(断 ...
Java实现在线SQL编程【完整版】 ...
SpringCloud五大常用组件
【云原生】Docker入门 -- 阿里云服务器 ...
标签云
AI
运维
CIO
存储
服务器
浏览过的版块
Oracle
公有云
快速回复
返回顶部
返回列表