渗透,初级入门必学.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
渗透,初级入门必学

渗透,初级入门必学 -------------- 一.如何拿后台? 1.注入 注入有get,post。这里只说get注入,工具的使用就不说了,重点是手工注入。怎么判断注入点?答:很简单,1.加入单引号 ’ 结果:如果出现错误提示,则该网站可能就存在注入漏洞。 2.数字型:and 1=1 ;and 1=2 字符型: and 1=1; and 1=2看返回是否出错,就是看看能不能正常显示! (这时有人就有疑惑了,神马是字符型?神马是数字型呢?比如/b.asp?id=abc就是字符型, /b.asp?id=123就是数字型) 分析:and 的意思是“和”如果没有过滤我们的语句,and 1=1就会被代入SQL查询语句进行查询, 如果and前后的两条语句都是真的话就不会出错,但如果前后语句有一个为假的话,程序就会暴错。 也就表明程序有注入漏洞即and 1=1正常 and 1=2出错则证明是注入点和刚才一样,我们先来看第二个字符型注入页面里的查询语句, 比如是这个select * from 表 where id=abc(为什么加引号?看前面吧!)。原来的查询语句是这个样子的, 如果我们还按照数字型参数的那种测试漏洞的方法的话,语句就会变成这样:select * from 表 where id=abc and 1=1和 select * from 表 where id=abc and 1=2 ,因为程序会自动查询引号里的内容,如果我们按前面这两个语句这样提交的话, 程序就会查询id值为abc and 1=1和abc and 1=2的记录,这样是查不到结果的.以下同理… 3.使用or 21 ; or 12来进行判断 结果:分别返回不同的页面,说明存在注入漏洞. 分析:or注入只要求前后两个语句只要有一个正确就为真,如果前后两个语句都是正确的,反而为假。 记住:or注入时,or后面的语句如果是正确的,则返回错误页面!如果是错误,则返回正确页面,说明存在注入点。 4.使用xor 1=1; xor 1=2 结果:分别返回不同的页面,说明存在注入漏洞. 分析:xor 代表着异或,意思即连接的表达式仅有一个为真的时候才为真。 记住:xor注入时,xor后面的语句如果是正确的,则返回错误页面积,如果是错误,则返回正确页面,说明存在注入点。 5.使用-1;-0 分析:如果返回的页面和前面不同,是另一则新闻,则表示有注入漏洞,是数字型的注入漏洞;在 URL地址后面加上 -0,URL变成 news.asp?id=123-0,返回的页面和前面的页面相同,加上-1,返回错误页面, 则也表示存在注入漏洞. 6.搜索框判断是否有注入,有的网站有搜索框就用这种方法注入: 简单的判断搜索型注入漏洞存在不存在的办法是先搜索,如果出错,说明90%存在这个漏洞。然后搜 索%,如果正常返回,说明95%有洞了。 说明:加入如、[、]、%、$、@等特殊字符,都可以实现,如果出现错误,说明有问题 操作: 搜索一个关键字,比如2006吧,正常返回所有2006相关的信息,再搜索2006%and 1=1 and %=和 2006%and 1=2 and %=,存在异同的话,就是100%有洞了,关联字字% and 1=1 and %=% 关键字% and 1=2 and %=% 将and 1=1 换成注入语句就可以了。 接下来,我们就要判断数据库类型了,可以通过系统表.sysobjects和msysobjects Sysobjects是SQL的内置系统表,在WEB下可以正常读取,msysobjects是Access的内置系统表,在WEB下无权读取。 那么就可以输入 and (select count(*) from sysobjects)0 或 and (select count(*) from msysobjects)0 这两句随便输入一句即可判断。 也可以提交 ;and 1=(SELECT IS_SRVROLEMEMBER(sysadmin));-- 如果显示正常,说明是SA,问题又来了…神马是sa呢?SA是系统超管的缩写,有最高权限哦… 也可以通过他们之间的差异来判断比如精典的;--在注入点后加上: ;-- 一个分号两个横线,如果页面返回正常的话,说明数据库是MSSQL,因为在MSSQL数据库里,;和--都是存在的, ; 用来分离两个语句,而--就是注释符,在它后面的语句都不执行,而ACCESS数据库里没有。还有and user0 例如:showdetail.asp?id=49 ;and user0 如果是ACCESS数据库,那么返回的错误里一般会有Microsoft JET Database关键定,如果是MSSQL数 据库的话返回的错误提示里一般会含有SQL

文档评论(0)

saa9099 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档