让我们扔下工具吧,来一次真正意义上的手工注入网站吧。 我们先理清楚思路,然后在进行实际的手工诸如网站,还有注意的是在你的浏览器的“工具”——“internet选项”——“高级”——“显示友好http错误信息”(里的勾给去掉哦)注明:就是显示页面出错的信息。 思路: 1.找目标(请使用谷歌搜索引擎输入:inurl:asp?id=N(N是数字,可以任何改变的自然数)) 2.谷歌里有很多类似于*asp?id=N的网站,看看这些网站是否可用。(这一上所说的就是注入点了)。 如图: 3.随便找一个然后复制这个网址,做判断它是否存在漏洞,方法是:and 1=1和and 1=2。 分析 and 1=1 和 and 1=2 是什么意思吧? 当你在网址最后处的id=N后面加上 and 1=1 功能:再回车,页面正常显示正常 当你在网址最后处的id=N后面加上 and 1=2 功能:再回车,页面不正常了。(说明这个网站有漏洞) 注意:当你找到一个网址是输入了 and 1=1 和 and 1=2 时,刷新页面时都是一个结果就是正常或者不正常的情况下,劝你还是不要再用这个网址就行了。里面还涉及了一些知识的。 4.如果在第三步骤可以实现的情况下,还要进行一步就是判断这个网站什么类型的数据库。 判断方法:在网址最后输入(’;),返回不正常的时候,说明是access类型的。反之,则是mssiql类型的。 另外一种判断语法如下: ’;and (select count(*) from sysobjects)>0 mssql(返回时不够权限的话是accese数据库系统的哦) ’;and (select count(*) from msysobjects)>0 access (正常返回的话是mssiql数据库的) 那么我们为什么还要分数据库的类型呢?因为在以下步骤中,access和mssiql这两个数据库类型所用到的查询语句是不同的。 以上都是我们所要考虑的哦! 一:accese注入: 准备的材料:http://www./showinfo2.asp?id=876 1. and 1=1 和 and 1=2 判断 如图: 2. 在网址最后输入“‘;” 判断数据库的类型,结果得出的效果是access类型的.如图: 3. 猜表名: and exists (select * from 你要猜得表名)查看是否存在表名 (存在的情况下页面刷新正常,同理猜字段一样的 结果存在admin)如图: 4. 猜列名的字段名: and exists (select 你要猜的字段名 from 你已经才出来的表名)查看是否存在字段名(结果存在username和password)如图: 这是username列名 这是password列名 这是针对3、4步骤常见的问题: 常用的表名:admin user news manage a_admin x_admin m_admin adminuser admin_user article_admin administrator manager member memberlist users Manage_User user_info admin_userinfo login new用户会员 常用的列名:username password id adminusername admin_username adminname admin_name admin adminuser admin_user user_name user_admin administrator administrators adminpassword admin_pwd adminpass userpass user_pass admin_passwod 用户 用户名 密码 账号 5. 猜上面3,4步骤的长度 方法:在网址最后输... 让我们扔下工具吧,来一次真正意义上的手工注入网站吧。 我们先理清楚思路,然后在进行实际的手工诸如网站,还有注意的是在你的浏览器的“工具”——“internet选项”——“高级”——“显示友好http错误信息”(里的勾给去掉哦)注明:就是显示页面出错的信息。 思路: 1.找目标(请使用谷歌搜索引擎输入:inurl:asp?id=N(N是数字,可以任何改变的自然数)) 2.谷歌里有很多类似于*asp?id=N的网站,看看这些网站是否可用。(这一上所说的就是注入点了)。 如图: 3.随便找一个然后复制这个网址,做判断它是否存在漏洞,方法是:and 1=1和and 1=2。 分析 and 1=1 和 and 1=2 是什么意思吧? 当你在网址最后处的id=N后面加上 and 1=1 功能:再回车,页面正常显示正常 当你在网址最后处的id=N后面加上 and 1=2 功能:再回车,页面不正常了。(说明这个网站有漏洞) 注意:当你找到一个网址是输入了 and 1=1 和 and 1=2 时,刷新页面时都是一个结果就是正常或者不正常的情况下,劝你还是不要再用这个网址就行了。里面还涉及了一些知识的。 4.如果在第三步骤可以实现的情况下,还要进行一步就是判断这个网站什么类型的数据库。 判断方法:在网址最后输入(’;),返回不正常的时候,说明是access类型的。反之,则是mssiql类型的。 另外一种判断语法如下: ’;and (select count(*) from sysobjects)>0 mssql(返回时不够权限的话是accese数据库系统的哦) ’;and (select count(*) from msysobjects)>0 access (正常返回的话是mssiql数据库的) 那么我们为什么还要分数据库的类型呢?因为在以下步骤中,access和mssiql这两个数据库类型所用到的查询语句是不同的。 以上都是我们所要考虑的哦! 一:accese注入: 准备的材料:http://www./showinfo2.asp?id=876 1. and 1=1 和 and 1=2 判断 如图: 2. 在网址最后输入“‘;” 判断数据库的类型,结果得出的效果是access类型的.如图: 3. 猜表名: and exists (select * from 你要猜得表名)查看是否存在表名 (存在的情况下页面刷新正常,同理猜字段一样的 结果存在admin)如图: 4. 猜列名的字段名: and exists (select 你要猜的字段名 from 你已经才出来的表名)查看是否存在字段名(结果存在username和password)如图: 这是username列名 这是password列名 这是针对3、4步骤常见的问题: 常用的表名:admin user news manage a_admin x_admin m_admin adminuser admin_user article_admin administrator manager member memberlist users Manage_User user_info admin_userinfo login new用户会员 常用的列名:username password id adminusername admin_username adminname admin_name admin adminuser admin_user user_name user_admin administrator administrators adminpassword admin_pwd adminpass userpass user_pass admin_passwod 用户 用户名 密码 账号 5. 猜上面3,4步骤的长度 方法:在网址最后输入:order by N(N代表自然数可以做任何的改变)。如图: 结果长度为28嘿嘿。 6. 在用语法:union查询 方法:在网址最后输入:union select 1,2,3......from admin(以此类推最后面是该输入第5步骤中N的数字)回车! 这里页面会出现几个字母哦 如图: 字母是7和21哦嘿嘿。 7. 在第6步骤中页面出现的数字是代表表名和字段名的显位的位置的。 对表名和列名的字段名中猜内容: 方法:union select 1,2,3,4,5,6.....from admin (这里要猜表名admin的内容,就要看看第6步骤中的显位的数字是几,然后把它替换成username就行了,同理列名的字段名中的password也是这样猜内容的)如图: 这是username的内容哦嘿嘿(这是在7的位置上的哦) 这是password的内容哦嘿嘿(这是在21的位置上的哦) 8. 最后得出了字段名中的username内容是管理员的用户名,字段名中的password密码是多少了(当然这密码是以密文的形式显示出来的,所以还要去解密就ok了,解密网站:www. 最好是到免费的在线网站去解密更好。或者如果你有解密工具那就更好了哦!) 9.登录www./admin的后台网站了(一般情况下网站最后输入admin就可以找到后台)如图: 好了就讲到这里了,希望大家能够做做。下期我还会讲手工注入php网站,这个asp注入网站的思路差不多。 本人技术还尚浅,无法得到webshell的技术,不过本人正在学习当中。以后我会做给你们如何提权拿到webshell的过程。 温情提示:仅提供学习哦请大家以学习的态度去看看我本人写的这篇经验,不要去做犯法的事哦,后果自负。 |
|
来自: 烟尘锁忆 > 《Cookie注入》