Web渗透入门
本文需要一些Web基础+数据库知识+URL编码基础+SQL基础
1.什么是Web渗透?
先来看个例子这是一个正常的网站页面,注意下它的url,http://www.hnyjca.com/lunwen_con.php?id=65
。有没有发现它的形式?XXXX.php?XX=XX
,一般来说有这样的url会有一定几率存在Web注入,可以进行Web渗透。
2.Web注入种类?
首先,Web注入,或者称之为注入点,即Injection
,意思是可以进行利用、攻击的地方,注入点的形成是由于网站编写的时候没有过滤用户的访问请求,导致数据库查询的时候产生漏洞(由于是动态页面,所以免不其然需要进行查询操作,于是乎就产生了注入漏洞),然而往往链接数据库的数据库用户都是SA或者Admin权限,于是乎网站就变得岌岌可危了。
通常情况下,Web注入点根据数据库的不同各有所不同,在此以MySQL数据库为例。(至于怎么判断数据库,手工虽然也可以但是一般用软件啥的,比如sqlmap)
Web注入点的注入方式也与参数类型有一点关系,一共有三种类型。
1.数字型 一般形式:id=111
SQL一般形式:where id=111
2.字符型 一般形式 id='111'
SQL一般形式:where id='111'
3.查询型 一般存在于搜索页面中 search=111
SQL一般形式:where id like %111%
3.注入点判断?
判断网站是否存在注入点,一般用的是and判断法,也就是在url后面添加and 1=1跟and 1=2进行判断,url编码后为%20and%201=1
和%20and%201=2
。
刚才那个例子如上进行页面访问后返回了如下页面:
http://www.hnyjca.com/lunwen_con.php?id=65%20and%201=1
http://www.hnyjca.com/lunwen_con.php?id=65%20and%201=2
发现了什么吗?没错,and 1=1
页面与原页面基本一致,and 1=2
页面与原页面完全不同。
这就是一个判断网站是否存在注入点的一个重要依据,一般来说用这个比较多。
4.注入点利用?
有了注入点,如果权限足够的话那么就好说了,数据库里有令人梦寐的用户表,里面存储了用户信息(账号密码),或者还有其他的一些表,不过这就是考验运气的时候到了,构造SQL查询语句来得到想要的东西。
首先,你要确定你想要什么,在这里我们去搞这个网站的用户表。 格式为and (select count(*) from 表名)>0
试试这个http://www.hnyjca.com/lunwen_con.php?id=65%20and%20(select%20count(*)%20from%20admin)%3E0
。。。看来没猜对
——————猜表过程省略——————
...未完待续
P.S.其实你可以用爆表方式取得所有表,不过这并不在本文讨论范围内
本文地址:https://www.dxoca.cn/skill/167.html 百度已收录
版权说明:若无注明,本文皆为“Dxoca's blog (寒光博客)”原创,转载请保留文章出处。