OWASP
英文单词:Open Web Application Security Project
OWASP是一个开源的、非盈利的全球性平安组织,致力于应用软件的平安钻研。咱们的使命是使应用软件更加平安,使企业和组织可能对利用平安危险做出更清晰的决策。目前OWASP寰球领有250个分部近7万名会员,独特推动了平安规范、平安测试工具、平安领导手册等利用平安技术的倒退。
近几年,OWASP峰会以及各国OWASP年会均获得了微小的胜利,推动了数以百万的IT从业人员对利用平安的关注以及了解,并为各类企业的利用平安提供了明确的指引。
SANS Institute
SANS研究所成立于1989年,其使命是为网络安全业余人员提供实用技能和专业知识,使数字世界更平安。为了实现这一指标,SANS研究所长期发展高质量的培训、认证以及学位课程授课,以满足网络安全业余人员的成长需要。目前,SANS研究所已成为寰球最大的提供信息技术和网络安全培训和认证服务的非官方组织之一,累计为超过165,000名平安业余人员提供了相干业余网络安全课程服务。同时,它还致力于开发和保护无关信息安全的综合钻研报告资料库。
传送门:https://www.sans.org/uk_en/
NIST
美国国家标准技术研究所,National Institute of Standards and Technology(NIST),前身为国家标准局(NBS,1901年~1988年),是一家测量规范实验室,属于美国商务部的非监管机构。NIST雇佣有大概2900名科学家、工程师、科技工作者,以及后勤和管理人员,大概1800名辅助工作人员(来自美国公司和国外的工程师和研究员),另外还有1400名专家散布在国内约350个从属钻研中心里。 NIST有四位研究者因其物理学上的成就取得了诺贝尔奖:威廉·丹尼尔·菲利普斯(1997年),埃里克·康奈尔(2001年),约翰·霍尔(2005年)和戴维·瓦恩兰(2012年),是美国政府实验室里获奖者最多的。
CERT
(Computer Emergency Response Team)
https://xueshu.baidu.com/usercenter/paper/show?paperid=1f0k0p...
CWE/SANS Top 25 Most Dangeros Software Erros
参考资料:https://blog.csdn.net/xymyeah/article/details/3773639
oracle Security Alert核心
https://www.oracle.com/cn/security-alerts/#SecurityAlerts
OWASP Java平安指南
《OWASP平安编码标准疾速参考指南》,是一个与技术无关的通用软件平安编码标准。它提供了一种综合的清单模式,能够交融到应用程序开发周期之中。该指南共有17页,内容容易浏览且容易被消化。
该指南的重点在于对平安编码的要求,而不是破绽和攻打。它包含了软件平安准则的介绍和要害术语列表。
该指南被设计作为平安编码工作的启动工具和繁难参考,以帮忙开发团队疾速理解平安编码标准。
OWASP Java代码审查指南
Category:OWASP Code Review Project
https://wiki.owasp.org/index.php/Category:OWASP_Code_Review_P...
日志记录和审计:
在Java中,日志记录和审计是十分重要的局部,它能够帮忙开发人员跟踪应用程序的运行状态、调试谬误和查找潜在的平安问题。Java提供了多种日志记录和审计的形式,上面是一些罕用的办法:
- java.util.logging:这是Java平台自带的日志记录框架,能够通过调用Logger类来记录日志信息。它提供了不同的日志级别(例如,INFO、WARNING、SEVERE等),能够依据须要配置日志记录的具体水平。
- Log4j:这是一个开源的日志记录框架,提供了更丰盛的性能和更灵便的配置选项。能够通过配置文件或代码来配置日志的输入形式、格局和级别。
- SLF4J(Simple Logging Facade for Java):这是一个形象层,能够在运行时抉择不同的日志记录实现,如Log4j、java.util.logging等。它提供了对立的日志记录API,使得应用程序更容易切换不同的日志记录实现。
- AOP(面向切面编程):能够应用AOP框架(如AspectJ)来实现日志记录和审计。通过在代码中定义切点和告诉,能够在特定的办法或代码段中插入记录日志的逻辑。
- 数据库审计:将日志记录到数据库中,能够在利用程序运行时记录各种操作和事件。能够应用JDBC或ORM框架(如Hibernate)来将日志写入数据库。
无论抉择哪种办法,都须要依据理论的需要和我的项目要求来抉择适合的日志记录和审计形式。同时,要留神日志的安全性和保密性,防止记录敏感信息。
平安邮件开发指南
在Java中开发平安邮件应用程序时,有几个要害的指南能够帮忙您确保安全和爱护用户的隐衷:
- 应用平安的传输协定:SMTP和POP3是最罕用的邮件传输协定,但它们不提供任何加密爱护。为了确保邮件的平安传输,您应该应用平安的协定,如SMTPS和POPS,或者应用加密层来爱护SMTP和POP3会话,如STARTTLS。
- 应用SSL / TLS加密:对于传输邮件中的敏感信息,如用户名和明码,倡议应用SSL / TLS加密来爱护数据的机密性。 Java提供了 javax.net.ssl 包,它蕴含了SSL / TLS协定的实现。
- 验证SSL证书:当应用SSL / TLS加密时,您应该验证服务器的SSL证书。这能够避免中间人攻打和坑骗。您能够应用javax.net.ssl.X509TrustManager来自定义本人的信赖管理器,并验证服务器的证书。
- 避免安全漏洞:编写平安的Java代码是十分重要的。您应该遵循最佳的平安编码实际,确保您的应用程序没有任何安全漏洞,如跨站脚本攻打(XSS)和SQL注入攻打。
- 应用加密算法:如果您须要在邮件中加密敏感信息,如内容或附件,您能够应用Java的加密性能。 Java提供了一些加密算法,如AES和RSA。您能够应用javax.crypto包中的类来实现加密和解密性能。
- 用户身份验证:确保只有受权用户能够拜访邮件帐户。您能够应用Java提供的javax.mail.Authenticator类来实现身份验证性能。
- 避免垃圾邮件和恶意软件:在开发邮件应用程序时,您应该思考施行垃圾邮件和恶意软件过滤器。这能够帮忙您避免发送或接管垃圾邮件和恶意软件。
- 日志记录和监控:在开发过程中,您应该增加适当的日志记录和监控性能,以便及时检测和响应安全事件。
总结起来,开发平安的Java邮件应用程序须要应用平安的传输协定,加密传输数据,验证SSL证书,避免安全漏洞,应用加密算法,施行用户身份验证,避免垃圾邮件和恶意软件,并增加日志记录和监控性能。
java 常见平安Blog和论坛
以下是一些Java常见平安相干的Blog和论坛:
- OWASP: OWASP(Open Web Application Security Project)是一个致力于提供对于Web应用程序平安的资源和信息的国际性组织。他们的官方网站上有一个专门的Blog和论坛,能够获取最新的Java平安相干信息。
- SecLists: SecLists是一个保护了各种平安相干资源的GitHub我的项目。其中蕴含了一些常见的Java平安相干的Payloads、Exploits等信息。
- Java平安论坛: Java平安论坛是一个专门探讨Java平安相干话题的在线社区。在这个论坛上,你能够与其余Java开发者和平安专家交流经验和最佳实际。
- The Java Secure Coding Guidelines: 这是Oracle官网公布的一份Java平安编码指南。在这个指南中,你能够找到一些常见的Java平安问题和对应的解决方案。
- Java Secure Coding: 这是一本由Gary McGraw和Edward W. Felten编写的Java平安编码指南,它具体介绍了一些Java平安问题和最佳实际。
平安培训和认证
Java平安培训和认证有以下几种:
- Oracle Certified Expert, Java EE Security Developer(OCE JEE Security)
该认证次要针对Java企业版(Java EE)平安开发人员,涵盖了Java EE平台上的安全性问题和解决方案。 - Oracle Certified Professional, Java SE Security Developer(OCP Java SE Security)
该认证次要面向Java标准版(Java SE)的平安开发人员,提供了对于Java安全性的基本知识和技能。 - Secure Coding in Java(SCJP)
这个培训次要关注Java编码的平安问题和最佳实际,帮忙开发人员防止在编写Java代码时的常见安全漏洞。 - Java Web Security(JWS)
这个培训课程次要向Java Web开发人员提供无关Java Web利用平安的常识和技能,包含网络攻击类型、安全漏洞、防御机制等。 - Secure Java Web Development(SJWD)
这个培训课程次要针对Java Web开发人员,提供了一些对于如何编写平安的Java Web应用程序的指南和最佳实际。
除了以上列举的认证和培训课程外,还有许多其余的Java平安相干培训和认证,如Java安全性破绽剖析、Java密码学等。在抉择培训和认证之前,倡议依据本人的理论需要和趣味进行抉择。