当前位置: 首页 > news >正文

免费建网站哪家好江苏水利厅建设网站

免费建网站哪家好,江苏水利厅建设网站,晋城市 制作网站,设立网站目录 一、什么是SQL注入#xff1f; 二、如何防止#xff1f; 2.1 使用预编译语句 2.2 使用 ORM 框架 2.3 用户输入校验 一、什么是SQL注入#xff1f; SQL 注入是一种常见的网络安全漏洞#xff0c;攻击者通过在应用程序的用户输入中插入恶意的 SQL 代码#xff…目录 一、什么是SQL注入  二、如何防止 2.1 使用预编译语句 2.2 使用 ORM 框架 2.3 用户输入校验 一、什么是SQL注入  SQL 注入是一种常见的网络安全漏洞攻击者通过在应用程序的用户输入中插入恶意的 SQL 代码试图欺骗数据库执行非预期的查询。 SQL 注入导致对数据库的未授权访问、数据泄露、数据损坏、数据库坏甚至完整的数据库被攻陷。 攻击者通常常通过在用户输入中注入 SQL 代码改变应用程序对数据库的查询语句以实现他们的恶意目的。 假设有一个简单的登录系统根据用户提供的用户名和密码进行身份验证。应用程序可能会使用类似以下的 SQL 查询来检查用户是否存在 String query SELECT * FROM users WHERE username userInputUsername AND password userInputPassword ;在这个查询中userInputUsername 和 userInputPassword 是从用户输入中获取的值。如果应用程序不正确处理这些输入它可能容易受到 SQL 注入攻击。 考虑以下情况攻击者在用户名和密码字段中输入了恶意的字符串 Username: OR 11 -- Password: OR 11 --将这些值代入原始的 SQL 查询得到的查询语句变成了 SELECT * FROM users WHERE username OR 11 -- AND password OR 11 --在注入的 SQL 中使用 -- 来注释掉他后面的代码那么我们原来的查询就会返回用户表中的所有记录因为 11 是一个始终为 true 的条件。 如此攻击者可以通过注入这样的恶意字符串绕过身份验证获得对应用程序中所有用户的访问权限甚至执行其他恶意操作。 如果还只是查询的话影响还不大万一是一个 delete 操作被注入了就可能会导致数据库被攻击而导致删除。如下被注入后的 SQL DELETE FROM users WHERE username OR 11; --二、如何防止 2.1 使用预编译语句 使用预编译的语句或参数化的语句而不是通过字符串拼接构建 SQL 查询。这样可以防止攻击者通过在用户输入中插入恶意代码来改变 SQL 查询的结构。 如使用 JDBC 时使用 PreparedStatement 而不是 Statement // 错误的例子容易受到 SQL 注入攻击 String userInput admin; DROP TABLE users;--; String query SELECT * FROM users WHERE username userInput ;// 正确的例子使用预编译语句 String userInput admin; DROP TABLE users;--; String query SELECT * FROM users WHERE username?; PreparedStatement preparedStatement connection.prepareStatement(query); preparedStatement.setString(1, userInput);2.2 使用 ORM 框架 除了 JDBC 以外基本都提倡使用 Hibernate 或 MyBatis 这种 ORM 框架他们都可以自动处理 SQL 查询减少手动拼接 SQL 的机会。 在 MyBatis 中优先使用 #{} 语法而非 ${} 语法。在 MyBatis 中#{} 语法会进行预编译而 ${} 语法是直接将参数的值拼接到 SQL 中容易受到 SQL 注入攻击。因此尽可能的使用 #{} 语法。 2.3 用户输入校验 永远不要相信用户的输入我们需要对用户输入进行验证和过滤确保只有预期的数据被传递给数据库。使用正则表达式或其他合适的方法来检查输入的合法性。 // 例子使用正则表达式验证输入是否为合法的用户名 String userInput request.getParameter(username);if (userInput.matches(^[a-zA-Z0-9]$)) {// 输入合法继续处理 } else {// 输入非法拒绝处理 }
http://www.hkea.cn/news/14525019/

相关文章:

  • 苏州做公司邮箱企业网站网站开发培训课程表
  • 深圳市建设工程交易服务网站wordpress哪个模板好用吗
  • 重启wordpress怎么 给自己的网站做优化呢
  • 温州网站排名优化公司口碑好的专业网站建设
  • 怎么自己做网站链接苏州 网站的公司
  • 大型集团网站建设铜铜铜铜铜铜铜铜好大好深色
  • 网站目录扫描辽宁建设工程
  • 手机网站制作视频教程网站制作模板图片
  • 哪些行业没有做网站如何建立自己的小程序
  • 网站制作一个人可以做吗wordpress整站主题
  • 网站类网站开发源代码网络营销策划书1500字
  • 自己的卡盟网站怎么做分站房产怎么创建网站
  • xuzhou网站制作怎么做免费网站如何让百度收录
  • 平安建设宣传音频免费下载网站临沂沂河新区
  • 请简述网站制作流程南漳网站制作
  • 制作网站单页图片怎么制作
  • 郴州网站建设找哪家公司织梦网站优化
  • 学工系统网站建设的意义运城seo
  • 网站建设阶段的推广哪里能找到免费网站
  • 做外贸网站推广什么比较好揭阳企业网站排名多少钱
  • 六安网站线上引流多少钱游戏动漫设计与制作
  • 简述网站开发工作流程wordpress对接易支付宝
  • 七台河做网站济南外贸网站建站
  • icp备案网站接入信息企业网站优化定制
  • 营销型平台网站建设iis建好的网站套用模板
  • 网站后台登录域名页面具有动态效果网站建设
  • 网站文案框架建行官网个人登录
  • 网站内容建设的原则是什么样的用html5做课程教学网站
  • 有限公司在线网站做网站什么主题好
  • 门户网站建设服务收费小程序商城开发商