`
laoyao319
  • 浏览: 13454 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类

JAVA 安全性转码代码(包括sql注入,跨站脚本)

 
阅读更多

  1. public class SecurityString {  
  2.   
  3.     public static String getHtml(String str) {  
  4.         //过滤敏感字符  
  5.         str = filter(str);  
  6.         if (str != null) {  
  7.             return str.replaceAll("\r\n", "<BR>");  
  8.         } else {  
  9.             return " ";  
  10.         }  
  11.     }  
  12.     /**  
  13.      * 防止跨站脚本攻击  
  14.      * 过滤敏感字符  
  15.      * 将HTML特殊字符转换为相应的实体字符。  
  16.      */  
  17.     public static String filter(String value) {  
  18.   
  19.         if (value == null || value.length() == 0) {  
  20.             return value;  
  21.         }  
  22.   
  23.         StringBuffer result = null;  
  24.         String filtered = null;  
  25.         for (int i = 0; i < value.length(); i++) {  
  26.             filtered = null;  
  27.             switch (value.charAt(i)) {  
  28.                 case '<' :  
  29.                     filtered = "<";  
  30.                     break;  
  31.                 case '>' :  
  32.                     filtered = ">";  
  33.                     break;  
  34.                 case '&' :  
  35.                     filtered = "&";  
  36.                     break;  
  37.                 case '"' :  
  38.                     filtered = """;  
  39.                     break;  
  40.                 case '\'' :  
  41.                     filtered = "'";  
  42.                     break;  
  43.             }  
  44.   
  45.             if (result == null) {  
  46.                 if (filtered != null) {  
  47.                     result = new StringBuffer(value.length() + 50);  
  48.                     if (i > 0) {  
  49.                         result.append(value.substring(0, i));  
  50.                     }  
  51.                     result.append(filtered);  
  52.                 }  
  53.             } else {  
  54.                 if (filtered == null) {  
  55.                     result.append(value.charAt(i));  
  56.                 } else {  
  57.                     result.append(filtered);  
  58.                 }  
  59.             }  
  60.         }  
  61.         return result == null ? value : result.toString();  
  62.     }  
  63.     /**  
  64.      * 防止SQL注入  
  65.      * 验证字符类型不能包含特殊字  
  66.      */  
  67.     public static boolean checkNonlicetCharacters(String string) {  
  68.         boolean flag = true;  
  69.         // 不许出现单引号  
  70.         if (string != null && string.indexOf("'") > 0) {  
  71.             flag = false;  
  72.         }  
  73.   
  74.         return flag;  
  75.     }  
  76.     /**  
  77.      * 防止SQL注入  
  78.      */  
  79.     public static String getValidSQLPara(String string) {  
  80.         if (string == null || string.length() == 0) {  
  81.             return string;  
  82.         }  
  83.         return string.replaceAll("'", "''");  
  84.     }  
  85.   

分享到:
评论
1 楼 ooo456mmm 2013-03-12  
这个有用吗??

相关推荐

    华为安全编码规范考试.md

    ### 华为安全编码规范考试知识点详解 #### 安全编码规范概述 安全编码规范是指导软件开发过程...- **解释**:虽然它可以有效防止 SQL 注入和 XML 注入等常见漏洞,但对于跨站脚本(XSS)等其他类型的漏洞则作用有限。

    ahpu播客源代码

    6. **安全与性能优化**:考虑到用户数据的安全性和平台的性能,开发者需要实施HTTPS加密、防止SQL注入、跨站脚本攻击(XSS)等措施,并优化服务器响应速度和资源加载。 7. **用户体验**:良好的播客平台应该提供...

    java毕业设计&课设-仿斗鱼直播小程序.zip

    同时,还需要防止SQL注入和跨站脚本攻击等常见安全威胁。 7. **负载均衡与集群**:随着用户量的增长,可能需要部署在多个服务器上,以实现负载均衡,避免单点故障。Nginx或HAProxy等工具可以帮助分配请求到不同的...

    [影音娱乐]泉城JSP播客系统_video.zip

    6. **安全性**:JSP播客系统需要防止SQL注入、跨站脚本攻击(XSS)等网络安全威胁。使用预编译的SQL语句、输入验证、内容过滤等方式加强安全性。 7. **用户认证与授权**:用户注册和登录功能通常基于session和...

    ASP.NET视频点播系统的设计与实现(源代码+论文).rar

    6. 安全性:确保系统安全是至关重要的,需要考虑防止SQL注入、跨站脚本攻击(XSS)和其他常见Web安全问题。ASP.NET提供了许多内置的安全机制,如验证控件、AntiForgeryToken等,可以有效增强系统的安全性。 7. 性能...

    交友资源类短视频安卓苹果双端原生APP源码

    7. 安全性:包括用户数据加密、防止SQL注入、跨站脚本攻击等。 8. 移动应用性能优化:如图片和视频的压缩,减少网络请求,提高加载速度。 对于想要学习或使用这个源码的人来说,需要具备扎实的移动开发和后端开发...

    基于javaweb+jsp的播客系统

    9. **安全性考虑**: 系统应防止SQL注入、跨站脚本攻击(XSS)等网络安全威胁,并对敏感数据如密码进行加密存储。 10. **API集成**: 如果系统需要与其他服务(如社交媒体平台、播客搜索引擎)进行交互,可能需要开发或...

    基于PHP的筱瞳影视CMS.zip

    在安全方面,筱瞳影视CMS应包含防止SQL注入、XSS(跨站脚本攻击)等常见Web安全威胁的措施。例如,使用预编译的SQL语句、过滤输入数据、启用CSRF(跨站请求伪造)防护等。 用户体验是另一个关键点。筱瞳影视CMS可能...

    毕业设计--JSP+mysql 网上视频点播系统

    8. **安全措施**:系统必须保护用户数据的安全,包括密码加密存储、防止SQL注入、跨站脚本攻击(XSS)和跨站请求伪造(CSRF)等。 9. **异常处理与日志记录**:良好的错误处理和日志记录机制可以帮助开发者诊断和修复...

    电影站程序

    - **XSS防护**:过滤用户输入,防止跨站脚本攻击。 7. **性能优化** - **CDN加速**:使用内容分发网络(CDN)缓存静态资源,提高加载速度。 - **缓存策略**:应用缓存技术,如Redis或Memcached,减少数据库访问...

    基于SSM+vue的视频播放系统.zip

    12. **安全性**:系统需关注XSS(跨站脚本攻击)、CSRF(跨站请求伪造)等安全问题,确保数据传输的安全性。 13. **测试**:包括单元测试、集成测试和端到端测试,确保代码质量及系统的稳定运行。 14. **部署与...

    在线通讯录-寻求帮助

    在线通讯录是一个旨在克服传统通讯录携带不便和易遗忘问题...此外,系统还需要考虑安全性,如防止SQL注入和跨站脚本攻击(XSS)。为了优化用户体验,可能还需要实施错误处理和用户反馈机制,确保系统的稳定性和可用性。

    [影音娱乐]泉城JSP播客系统_video.rar

    5. **安全机制**:包括用户认证(登录验证)、授权(权限管理)以及防止SQL注入、跨站脚本攻击等,确保系统的安全性。 6. **文件上传与下载**:系统需支持用户上传音视频文件,这涉及到文件流的处理和存储管理。...

    12950546542021最新影视源码.zip

    8. **安全性**:源码应包含安全措施,如防止SQL注入、XSS攻击、CSRF攻击等,同时需要对用户密码进行加密存储,保证系统的整体安全性。 9. **可扩展性与维护**:优秀的源码应该具备良好的代码结构和文档,便于后期的...

    626716952341819原生音乐网站.rar

    网络安全不容忽视,网站需要防止SQL注入、跨站脚本攻击(XSS)和跨站请求伪造(CSRF)等。HTTPS协议用于加密数据传输,防止数据被窃取。同时,定期的安全审计和漏洞修复也是必要的。 七、性能优化 为了提供流畅的...

    最新影视双端完整360版.zip

    “影视双端360版”可能是源码的主文件夹名,里面可能包含以下结构:源代码文件(如JavaScript、Java、Swift或Kotlin)、数据库配置文件、静态资源(如图片、CSS样式表、HTML模板)、配置文件、构建脚本、测试用例等...

    JSP源码 泉城JSP播客系统_video.rar

    7. **安全性**:考虑防止SQL注入、XSS攻击和CSRF攻击,以及视频版权保护措施。 8. **性能优化**:缓存策略、负载均衡、CDN(内容分发网络)的使用,以应对大量用户访问和大流量视频数据。 9. **搜索引擎优化(SEO...

    基于PHP的新版米酷影视电影网站v7.2.1(修复幻灯片分类网址错误)源码.zip

    6. **安全性**:考虑到网站的安全性,PHP可能采用了防止SQL注入、XSS攻击等安全措施,如使用预编译语句、过滤用户输入、启用CSRF令牌等。 7. **SEO优化**:为了提升网站在搜索引擎中的排名,PHP可能实现了动态URL...

    基于PHP的易看影音 php版 v1.01.zip

    9. 安全性:防止SQL注入、XSS攻击和其他Web安全威胁是PHP开发中的重要考虑。使用预处理语句、过滤用户输入、验证表单提交等方法可以增强系统的安全性。 10. 扩展与插件:为了增加功能或个性化定制,系统可能支持...

    springboot069视频网站系统的设计与实现.zip

    6. 安全性:用户认证、授权,防止未授权访问。 【压缩包子文件的文件名称列表】中: - "论文.doc":可能包含项目的详细设计、技术选型、架构分析以及实施过程等内容。 - "db.sql":数据库脚本文件,用于创建和初始...

Global site tag (gtag.js) - Google Analytics