서비스 잘못된 설정
따옴표 없는 경로와 취약한 권한
서비스 잘못된 설정은(는) CoddyKit의 무료 Ethical Hacking Academy 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Ethical Hacking Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Ethical Hacking Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
공격 경로로서의 서비스
Windows 서비스는 흔히 SYSTEM으로 실행되며 자동으로 시작됩니다. 권한이 약하거나, 바이너리 경로를 하이재킹할 수 있거나, 실행 파일을 수정할 수 있는 등 서비스가 잘못 구성되어 있으면 SYSTEM 권한으로 코드를 실행할 수 있습니다.
따옴표 없는 서비스 경로
서비스의 바이너리 경로에 공백이 포함되어 있고 따옴표로 묶여 있지 않으면, Windows는 공백으로 구분된 각 접두사 뒤에 .exe를 붙여 시도합니다. C:\Program Files\My App\svc.exe의 경우 C:\Program.exe, 그다음 C:\Program Files\My.exe 등을 시도합니다.
wmic service get Name,PathName,StartName | findstr /i /v "\""따옴표 없는 경로 악용
중간 디렉터리 중 하나(예: 잘못 구성된 시스템의 C:\Program Files\)에 쓸 수 있다면, 그곳에 악성 My.exe를 배치하십시오. SYSTEM 서비스가 시작될 때 Windows가 사용자의 바이너리를 실행합니다.
icacls "C:\Program Files"
# need write access to the unquoted segment약한 서비스 권한
사용자에게 SYSTEM 서비스에 대한 SERVICE_CHANGE_CONFIG 권한이 있다면, 바이너리 경로를 페이로드로 변경하고 서비스를 다시 시작할 수 있습니다. AccessChk로 서비스 ACL을 확인하십시오.
accesschk.exe -uwcqv "Users" *
# look for SERVICE_ALL_ACCESS / SERVICE_CHANGE_CONFIG서비스 바이너리 경로 수정
구성 변경 권한이 있으면 binPath를 사용자를 Administrators에 추가하는 명령으로 변경한 다음, 서비스가 SYSTEM으로 실행되도록 다시 시작하십시오.
sc config vulnsvc binPath= "cmd /c net localgroup administrators user /add"
sc stop vulnsvc & sc start vulnsvc바이너리의 약한 파일 권한
구성 변경 권한이 없더라도 서비스의 실행 파일 자체를 사용자가 수정할 수 있다면, 파일을 페이로드로 덮어쓰고 서비스를 다시 시작하십시오(또는 재부팅을 기다리십시오).
icacls "C:\Program Files\VulnApp\service.exe"
# (M) or (F) for Users/Everyone = writableDLL 하이재킹
SYSTEM 서비스가 검색 순서에 있는 쓰기 가능한 디렉터리에서 이름으로 DLL을 불러온다면, 그곳에 악성 DLL을 배치하십시오. 다음에 서비스가 시작될 때 사용자의 코드가 로드됩니다. 이를 DLL 하이재킹 / 검색 순서 악용이라고 합니다.
레지스트리 기반 서비스 악용
서비스 구성은 HKLM\SYSTEM\CurrentControlSet\Services 아래에 저장됩니다. 서비스 레지스트리 키에 대한 쓰기 권한이 있으면 ImagePath를 변경할 수 있으며, 이는 SYSTEM으로 실행되는 항목을 제어하는 또 다른 경로입니다.
reg query "HKLM\SYSTEM\CurrentControlSet\Services\vulnsvc"서비스 다시 시작
권한 상승은 다시 시작을 유발할 수 있는지에 달려 있는 경우가 많습니다. 서비스를 직접 중지하거나 시작할 수 없다면 재부팅이 필요할 수 있습니다 — 또는 자동으로 다시 시작되는 서비스를 대상으로 삼을 수 있습니다. 자신의 계정으로 서비스를 다시 시작할 수 있는지 확인하십시오.
sc qc vulnsvc # query config
sc query vulnsvc # current statePowerUp으로 이러한 항목 찾기
PowerUp의 검사 기능(Get-ServiceUnquoted, Get-ModifiableServiceFile, Get-ModifiableService)은 이러한 서비스 잘못된 구성을 모두 자동으로 찾아내며, 악용 명령까지 생성합니다.
powershell -ep bypass
Import-Module .\PowerUp.ps1
Invoke-AllChecks방어와 윤리
방어자는 모든 서비스 경로를 따옴표로 묶고, 서비스 및 바이너리 ACL을 제한하며, 최소 권한으로 서비스를 실행하고, 서비스 레지스트리 키를 보호해야 합니다. 이러한 항목은 권한이 부여된 시스템에서만 악용하십시오.
빠른 확인
서비스 잘못된 구성에 관한 지식을 테스트해 보십시오.
복습
서비스 기반 권한 상승을 배웠습니다.
- 따옴표 없는 서비스 경로를 이용하면 더 앞쪽의 경로 구간에 바이너리를 배치할 수 있습니다
- 약한 서비스 권한이 있으면
binPath를 다른 경로로 지정할 수 있습니다 - 쓰기 가능한 서비스 바이너리와 DLL 하이재킹도 사용할 수 있습니다
- PowerUp은 탐색과 악용을 자동화합니다
다음 주제: 토큰 가장입니다.
자주 묻는 질문
“서비스 잘못된 설정” 강의는 무료인가요?
네 — “서비스 잘못된 설정” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Ethical Hacking Academy 강의 전체를 잠금 해제할 수 있습니다. Ethical Hacking Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“서비스 잘못된 설정”에서 뭘 배우나요?
따옴표 없는 경로와 취약한 권한 브라우저에서 직접 실행하는 실습 코드로 Ethical Hacking Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Ethical Hacking Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Ethical Hacking Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.
“서비스 잘못된 설정” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Ethical Hacking Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Ethical Hacking Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- Windows 열거
- 서비스 잘못된 설정
- 토큰 가장
- 자격 증명 수집