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

网站空间和虚拟主机网站开发的形式是

网站空间和虚拟主机,网站开发的形式是,怎么做网站像淘宝这样的,国内搜索引擎排名第一问题: XPath 注入是指数据从一个不可信赖数据源进入程序,用于动态构造一个 XPath 查询,获取权限信息 的访问权并更改这些信息的一种攻击方式。 例如:以下代码片段中,可动态地构建并执行一个 XPath 查询&#xf…

问题:

XPath 注入是指数据从一个不可信赖数据源进入程序,用于动态构造一个 XPath 查询,获取权限信息
的访问权并更改这些信息的一种攻击方式。
例如:以下代码片段中,可动态地构建并执行一个 XPath 查询,为指定的帐户 ID 检索电子邮件地址。
String acctID = request.getParameter("acctID");
String query = null;
if(acctID != null) {
StringBuffer sb = new StringBuffer("/accounts/account[acctID='");
sb.append(acctID);
sb.append("']/email/text()");
query = sb.toString();
}
DocumentBuilderFactory domFactory = DocumentBuilderFactory.newInstance();
domFactory.setNamespaceAware(true);
DocumentBuilder builder = domFactory.newDocumentBuilder();
Document doc = builder.parse("accounts.xml");
XPathFactory factory = XPathFactory.newInstance();
XPath xpath = factory.newXPath();
XPathExpression expr = xpath.compile(query);
Object result = expr.evaluate(doc, XPathConstants.NODESET);
正常情况下(例如搜索属于帐号 1 的电子邮件地址),此代码所执行的查询如下所示:
/accounts/account[acctID='1']/email/text()
如果攻击者为 acctID 输入字符串 1' or '1' = '1 ,则该查询会变成:
/accounts/account[acctID='1' or '1' = '1']/email/text()
附加条件 1' or '1' = '1 会使 where 从句永远评估为 true ,因此该查询在逻辑上将等同于一个更为简化的
查询:
//email/text()
这样就可以查询到文档中存储的所有电子邮件地址。
修复:
造成 XPath 注入的根本原因在于攻击者能够改变 XPath 查询的上下文,导致程序员期望解释为数据的
某个数值被解释为命令了。为了防止攻击者侵犯程序员的各种预设情况,可以使用白名单的方法,确保
XPath 查询中由用户控制的数值完全来自于预定的字符集合,不包含任何 XPath 元字符。如果由用户控制
的数值要求它包含 XPath 元字符,则使用相应的编码机制转义或删除这些元字符。
例如:以下代码片段中,将不可信赖的数据 acctID 转化为一个整形再用于构造 XPath 查询,避免了 XPath
注入攻击。
String acctID = request.getParameter("acctID");
String query = null;
if(acctID != null) {
Integer iAcctID = -1;
try {
iAcctID = Integer.parseInt(acctID);
}
catch (NumberFormatException e) {
throw new InvalidParameterException();
}
StringBuffer sb = new StringBuffer("/accounts/account[acctID='");
sb.append(iAcctID.toString());
sb.append("']/email/text()");
query = sb.toString();
}
DocumentBuilderFactory domFactory = DocumentBuilderFactory.newInstance();
domFactory.setNamespaceAware(true);
DocumentBuilder builder = domFactory.newDocumentBuilder();
Document doc = builder.parse("accounts.xml");
XPathFactory factory = XPathFactory.newInstance();
XPath xpath = factory.newXPath();
XPathExpression expr = xpath.compile(query);
Object result = expr.evaluate(doc, XPathConstants.NODESET);

文章转载自:

http://E4zoyKxk.shprz.cn
http://dwloMRFc.shprz.cn
http://X9ToPFTY.shprz.cn
http://Dtf8UD1w.shprz.cn
http://KtmrzV9Y.shprz.cn
http://8ZZa7DVT.shprz.cn
http://oXqG2z2s.shprz.cn
http://vGUo4AJH.shprz.cn
http://2edZifJI.shprz.cn
http://hQG0qqfn.shprz.cn
http://oCOpQjBP.shprz.cn
http://HKuOBlwM.shprz.cn
http://dFLf9fH7.shprz.cn
http://8jdGz9kD.shprz.cn
http://VJuNHEKl.shprz.cn
http://eSBNFvHe.shprz.cn
http://YfIZgGw4.shprz.cn
http://Y86F9PRj.shprz.cn
http://MwuMKOLY.shprz.cn
http://xRi1tfNJ.shprz.cn
http://FpzMpIxK.shprz.cn
http://wnLgo4or.shprz.cn
http://AoICPRZp.shprz.cn
http://qadvljgK.shprz.cn
http://jy2v5zqe.shprz.cn
http://1y4ZdNIb.shprz.cn
http://FNlHc8P1.shprz.cn
http://XaMUQ3XV.shprz.cn
http://9sKn2nw3.shprz.cn
http://neuNILCM.shprz.cn
http://www.dtcms.com/wzjs/718177.html

相关文章:

  • 专门做产品推广ppt的网站wordpress the7 seo
  • 怎样建单位的网站计算机网站建设论文总结
  • 个人网站域名所有权软件定制系统
  • 网站添加视频代码网站建设方案论文1500
  • 怎样向搜索引擎提交网站网页美术设计专业
  • 网站网页跳转wordpress ent主题
  • 济源网站建设怎么开店铺
  • 阿里云做外贸网站如何做电商创业项目
  • 芜湖seo网站优化人才网站建设报告
  • 网站制作教程ps怎么建设只要注册就赚钱的网站
  • 怎么样查询建设网站wordpress主题文制作
  • 外贸网站怎么做才好优化大师优化项目有哪些
  • 网络公司 网站建设 小程序网站建设 cms
  • 徐州云建站模板温州网站建设公司有哪些
  • 天津网站专业制作wordpress 做一个视频站
  • flash网站系统网站建设用什么写
  • 小说网站如何做网站的性能需求
  • 排名网站却搜不到上海网论坛网址
  • 网站建设贵阳有创意的设计产品
  • 中国住建部网站官网基于jsp网站开发与实现
  • 统一身份认证平台北京中文seo
  • 哪个网站可以看一级a做爰片t搜索引擎公司排名
  • 茶叶网站模板北京seo排名厂家
  • 做网站月收入东莞网站公司
  • 分析公司网站的开发策略彩票网站建设平台
  • 有实力的网站建设公司织梦模板安装
  • 网站建设+用ftp上传文件logo设计制作网站
  • 垣曲做网站网站优化seo是什么意思
  • 网站建设 柳州4成都网站建设
  • 网站制作百度资源潍坊网站模板在哪