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

网站建设 上海网站建拼多多代运营一般多少钱

网站建设 上海网站建,拼多多代运营一般多少钱,wordpress当前页面id,网页编辑软件dreamweaver问题: SQL 注入是一种数据库攻击手段。攻击者通过向应用程序提交恶意代码来改变原 SQL 语句的含义,进 而执行任意 SQL 命令,达到入侵数据库乃至操作系统的目的。使用 iBatis 执行一个通过用户输入构建的动 态 SQL 指令&#xff0c…

问题:

SQL 注入是一种数据库攻击手段。攻击者通过向应用程序提交恶意代码来改变原 SQL 语句的含义,进
而执行任意 SQL 命令,达到入侵数据库乃至操作系统的目的。使用 iBatis 执行一个通过用户输入构建的动
SQL 指令,会使攻击者篡改指令的含义或者执行任意的 SQL 命令。
例如:下面代码片段中,动态构造并执行了一个 SQL 查询来认证用户。
public void doPrivilegedAction( String username, char[] password) throws SQLException {
Connection connection = getConnection();
if (connection == null) {
// handle error
}
try {
String pwd = hashPassword(password);
String sqlString = "SELECT * FROM db_user WHERE username = '" + username + "' AND 四川久远银海软件股份有限公司
代码开发安全规范
13 / 87
password = '" + pwd + "'";
Statement stmt = connection.createStatement();
ResultSet rs = stmt.executeQuery(sqlString);
if (!rs.next()) {
throw new SecurityException( "User name or password incorrect");
}
// Authenticated; proceed
} finally {
try {
connection.close();
} catch (SQLException x) {
// forward to handler
}
}
}
如果攻击者能够替代 username password 中的任意字符串,它们可以使用下面的关于 username
的字符串进行 SQL 注入。
validuser' OR '1'='1
当其注入到命令时,命令就会变成:
SELECT * FROM db_user WHERE username=’validuser' OR '1'='1' AND password=’’
同样,攻击者可以为 password 提供如下字符串。
' OR '1'='1
当其注入到命令时,命令就会变成:
SELECT * FROM db_user WHERE username='' AND password='' OR '1'='1'
修复:
造成 SQL 注入攻击的根本原因在于攻击者可以改变 SQL 查询的上下文,使程序员原本要作为数据解
析的数值,被篡改为命令了。防止 SQL 注入的方法如下:
1 )正确使用参数化 API 进行 SQL 查询。
2 )如果构造 SQL 指令时需要动态加入约束条件,可以通过创建一份合法字符串列表,使其对
应于可能要加入到 SQL 指令中的不同元素,来避免 SQL 注入攻击。
例 如 : 以 下 代 码 片 段 使 用 java.sql.PreparedStatement 代 替 java.sql.Statement , 在
java.sql.PreparedStatement 类中可以对输入字符串进行转义,如果使用正确的话,可以防止 SQL 注入。
public void doPrivilegedAction(String username, char[] password) throws SQLException {
Connection connection = getConnection();
if (connection == null) {
// Handle error
}
try {
String pwd = hashPassword(password);
// Ensure that the length of user name is legitimate
if ((username.length() > 8) {
// Handle error
}
String sqlString = "select * from db_user where username=? and password=?";
PreparedStatement stmt = connection.prepareStatement(sqlString);
stmt.setString(1, username);
stmt.setString(2, pwd);
ResultSet rs = stmt.executeQuery();
if (!rs.next()) {
throw new SecurityException("User name or password incorrect");
}
// Authenticated, proceed
} finally { 四川久远银海软件股份有限公司
代码开发安全规范
14 / 87
try {
connection.close();
} catch (SQLException x) {
// forward to handler
}
}
}
http://www.dtcms.com/wzjs/167158.html

相关文章:

  • 建设工程教育网视频网站怎样注册个人网站
  • 扬州seo招聘新十条优化措施
  • 养老院网站建设的费用小广告
  • 网站论坛怎么做 csdn上海百度推广官网
  • 佛山从事网站建设百度关键词优化排名
  • 怎样说服老板做网站seo优化与推广招聘
  • 武汉网站建设设计哪家好深圳网站制作推广
  • 程序员怎么做自己的网站企业网站有哪些功能
  • 电子商务网站建设要多少钱如何制作一个自己的网页网站
  • wordpress图片防盗插件河南网站关键词优化代理
  • 网站做等保二级收费多少百度首页排名怎么做到
  • 互动网站的核心技术十大禁止安装应用入口
  • 用什么软件来做网站网站建设
  • 做医院网站公司吗世界搜索引擎大全
  • 好的网站推荐下 感谢百度竞价推广联系方式
  • 在手机上怎么做微电影网站优化工具箱
  • 团购火锅自助网站建设网站宣传推广策划
  • 做网站的框架结构青岛seo推广
  • 中国铁塔公司网站5g网络建设制作网页的流程步骤
  • 网站建设毕业设计文献综述google下载安卓版下载
  • 用淘宝做公司网站国外广告联盟平台
  • 搜索引擎的网站有哪些网站快速被百度收录
  • 哪个网站有老外教做蛋糕企业营销策略分析论文
  • 公司网站建设及推广高清视频网络服务器
  • ubc网站谁做的app推广
  • 软件下载网站怎么做宁波网站推广代运营
  • 阿里巴巴网站维护要怎么做百度seo培训要多少钱
  • 北京哪个公司做网站营销推广型网站
  • 官方网站英语域名注册哪个网站好
  • 建设学校网站策划书关键词seo公司推荐