CentOS环境下JSP应用安全保障需从系统加固、应用层防护、攻击防范、服务器配置及监控审计等多维度综合实施,以下是具体关键措施:
账户与权限管理
/etc/passwd文件排查并锁定/删除无用的超级用户账户,减少潜在攻击入口。/etc/login.defs文件,设置密码复杂度(包含大小写字母、数字、特殊字符)、长度≥10位及定期过期(如90天)。chattr +i命令给/etc/passwd、/etc/shadow、/etc/group等文件添加不可更改属性,防止未授权修改。su命令使用:编辑/etc/pam.d/su文件,仅允许wheel组用户通过su切换至root,降低权限提升风险。系统更新与补丁管理
yum update命令更新CentOS系统内核及软件包,优先修复高危漏洞(如OpenSSL、Glibc等)。输入验证与过滤
String.matches())检查数据格式(如邮箱、手机号),拒绝非法字符(如<、>、'、")。eval()、Runtime.getRuntime().exec()等可能执行动态代码的函数,防止代码注入。安全会话管理
web.xml中配置<session-timeout>(如30分钟),超时后自动销毁会话;对不活动会话定期注销(如通过HttpSession.setMaxInactiveInterval())。Secure(仅通过HTTPS传输),防止会话ID被窃取。输出编码防护
<c:out>标签(自动进行HTML实体编码)或ESAPI.encodeForHTML()函数,防止跨站脚本(XSS)攻击(如将<script>转为<script>)。SQL注入
PreparedStatement)替代字符串拼接:将用户输入作为参数传递,而非直接嵌入SQL语句(如SELECT * FROM users WHERE username = ?),彻底杜绝SQL注入漏洞。SELECT、INSERT等必要权限,避免攻击者通过注入获取管理员权限。跨站脚本(XSS)
<、>),输出时进行HTML编码(如使用<c:out>)。web.xml中添加<content-security-policy>,限制脚本来源(如仅允许本站脚本),增强浏览器端防护。文件包含漏洞
..、/等特殊字符;使用ServletContext.getResourceAsStream()加载资源,而非直接拼接路径。文件上传漏洞
jpg、png)、文档(pdf)等安全格式,通过MultipartFile.getContentType()校验。UUID.randomUUID().toString()),避免恶意文件名(如shell.jsp)。/var/www/uploads),防止直接通过URL访问。防火墙配置
firewalld或iptables限制访问:仅开放必要端口(如HTTP的80端口、HTTPS的443端口、SSH的22端口),拒绝其他端口的外部连接。/etc/ssh/sshd_config中的PermitRootLogin no),使用密钥认证替代密码认证,降低SSH爆破风险。HTTPS加密
server.xml或nginx.conf),强制客户端使用https://访问,防止中间人攻击(如数据窃取、篡改)。日志管理
logging.properties(如org.apache.catalina.level=FINE)和系统日志(/var/log/messages),记录访问日志(IP、URL、时间)、错误日志(异常堆栈)。grep、awk等工具分析日志,检测异常行为(如频繁的登录失败、大量404错误、可疑的文件上传)。入侵检测与预防
fail2ban监控日志,自动封禁频繁攻击的IP地址(如SSH爆破、SQL注入尝试);或使用Snort等工具实时检测入侵行为。最小权限运行
tomcat):将Tomcat安装目录及文件的所属用户设为tomcat(chown -R tomcat:tomcat /opt/tomcat),并以该用户身份启动Tomcat(./startup.sh),避免使用root运行。禁用不必要的组件
conf/server.xml:关闭默认的AJP端口(若无需与Apache集成),注释<Connector port="8009" protocol="AJP/1.3">。webapps目录下的docs、examples、manager等示例应用,减少攻击面。配置安全约束
web.xml中添加安全约束:限制敏感目录(如/WEB-INF、/META-INF)的访问(<auth-constraint>),仅允许授权用户访问;启用CSRF防护(如通过<csrf-filter>)。通过以上措施的综合实施,可显著提升CentOS环境下JSP应用的安全性,有效防范常见的Web攻击及系统漏洞。安全是一个持续过程,需定期进行安全评估(如渗透测试)及策略调整,以应对新的威胁。