O a'u o a'a. Malamalama i le Linux OS Privilege Escalation

Na ou faʻaaluina le kuata muamua o le 2020 sauniuni mo le suʻega OSCP. O le su'eina o fa'amatalaga ile Google ma le tele o taumafaiga "tauaso" na alu uma ai lo'u taimi avanoa. Sa sili ona faigata ona malamalama i faiga mo le faateleina o avanoa. O le a'oa'oga a le PWK e matua'i taula'i atu i lenei mataupu, ae e le'i lava mea e a'oa'o atu ai. E tele tusi lesona i luga o le Initaneti ma faʻatonuga aoga, ae e le o aʻu o se tagata fiafia e mulimuli tauaso fautuaga e aunoa ma le malamalama i le mea o le a taʻitaʻia ai.

Ou te fia faasoa atu ia te oe mea na ou aoaoina i le taimi o le sauniuniga ma le faamanuiaina o le pasi o le suʻega (e aofia ai taimi taʻavale i le Hack The Box). Sa ou lagonaina se lagona malosi o le faafetai mo vaega uma o faamatalaga na fesoasoani ia te au ou te savalia le ala Try Harder ma le malamalama atili, o loʻu taimi lenei e toe faafoi atu ai i le nuu.

Ou te manaʻo e tuʻuina atu ia te oe se tusi lesona pe faʻafefea ona faʻateleina avanoa i le OS Linux, lea e aofia ai se auʻiliʻiliga o vete sili ona taatele ma uiga faʻapitoa e mautinoa lava e aoga ia te oe. E masani lava o auala mo le faʻateleina o avanoa e fai lava si faigofie; faʻafitauli e tulaʻi mai pe a faʻatulagaina ma auʻiliʻili faʻamatalaga. O le mea lea, na ou filifili ai e amata i se "taamilosaga maimoa" ona mafaufau lea i vector taʻitasi i se tala ese. Ou te faʻamoemoe ou te faʻasaoina sina taimi e suʻesuʻe ai le autu.

O a'u o a'a. Malamalama i le Linux OS Privilege Escalation

Aisea la e mafai ai ona faʻateleina avanoa i le 2020 pe afai o auala ua lauiloa mo se taimi umi lava? O le mea moni, afai e faʻaoga saʻo e le tagata faʻaoga le faiga, o le a matua le mafai lava ona faʻateleina avanoa i totonu. O le faafitauli autu o le lalolagi e mafua ai avanoa faapena fa'atonuga le mautinoa. O le i ai o faʻamatalaga faʻapipiʻi tuai o loʻo i ai faʻafitauli i totonu o le faiga o se tulaga faʻapitoa foi o se faʻatulagaga le saogalemu.

Fa'ateleina fa'amanuiaga e ala ile fa'atonuga le saogalemu

Muamua, seʻi o tatou feagai ma le faʻaogaina le saogalemu. Tatou amata i E masani ona faʻaaogaina e le au faʻapolofesa IT tusi lesona ma punaoa e pei o le stackoverflow, o le tele o ia mea o loʻo i ai ni faʻatonuga le saogalemu ma configs. O se faʻataʻitaʻiga mataʻina - le tala fou o le code na sili ona kopiina mai le stackoverflow o loʻo i ai se mea sese. O le a va'aia e se pule fa'apitoa le sima, ae o lo'o i se lalolagi lelei. E oo lava i tagata tomai faapitoa fa'ateleina galuega mafai ona faia mea sese. Vaai faalemafaufau o loʻo sauniuni ma faʻamaopoopoina e le pule faʻamaumauga mo le isi tauofoga, i le taimi lava e tasi e suʻesuʻe i le tekonolosi fou o le a faʻatinoina i le isi kuata, aʻo foia i lea taimi ma lea taimi faʻafitauli lagolago a tagata. Ona tuʻuina atu lea ia te ia le galuega o le vave faʻatulagaina o ni masini masini ma taʻavale auaunaga ia i latou. O le a sou manatu o le a le avanoa e le iloa ai e le pule le sima? Ona sui lea o tagata tomai faapitoa, ae tumau pea tootoo, ae taumafai pea kamupani e faaitiitia tau, e aofia ai mo le aufaigaluega IT.

O le atigi faafoliga ma le falepuipui

O le atigi faiga na maua i le taimi o le faʻaogaina o mea e masani ona faʻatapulaʻaina, aemaise lava pe a e mauaina e ala i le hacking o se tagata faʻaogaina le upega tafaʻilagi. Mo se faʻataʻitaʻiga, faʻatapulaʻaina atigi e mafai ona taofia oe mai le faʻatinoina o le sudo poloaiga, faia se mea sese:

sudo: no tty present and no askpass program specified

O le taimi lava e maua ai sau atigi, ou te fautuaina le fatuina o se faʻaoga atoa, mo se faʻataʻitaʻiga faʻaaoga Python.

python -c 'import pty;pty.spawn("/bin/bash")'

Atonu e te fesili: "Aisea ou te manaʻomia ai le afe o poloaiga pe a mafai ona ou faʻaogaina se tasi, mo se faʻataʻitaʻiga, e faʻafeiloaʻi faila?" O le mea moni o faiga e faʻapipiʻiina eseese; o se talimalo tuʻuina atu atonu e le faʻapipiʻiina Python, ae atonu e iai Perl. O le tomai o le mafai lea ona fai mea masani i le faiga e aunoa ma ni meafaigaluega masani. E mafai ona maua se lisi atoa o foliga iinei.

E mafai ona maua se atigi maualalo-fa'apitoa e fa'aaoga 'au 1 и 'au 2 (mea e ofo ai, e oʻo lava ile GIMP).

Va'ai le tala fa'asolopito

E aoina e Linux se talaʻaga o faʻatonuga uma na faia i totonu o se faila ~/.bash_history. Afai o loʻo faʻaaogaina le 'auʻaunaga ma e leʻo faʻamaonia lona talafaasolopito, e maualuga le avanoa e maua ai faʻamaoniga i lenei faila. O le fa'amamaina o tala fa'asolopito e matua faigata lava. Afai e faamalosia le pule e filifili le sefulu-tala poloaiga e ala i le , ioe, o le a sili atu ona faigofie mo ia e valaau lenei poloaiga mai le talafaasolopito nai lo le toe ulufale i ai. Ma le isi, e toʻatele tagata e le iloa e uiga i lenei "hack." Afai ei ai isi atigi e pei o Zsh poʻo Fish i totonu o le faiga, e iai a latou lava talaʻaga. Ina ia faʻaalia le talaʻaga o faʻatonuga i soʻo se atigi, naʻo le taina o le tala faʻasolopito.

cat ~/.bash_history
cat ~/.mysql_history
cat ~/.nano_history
cat ~/.php_history
cat ~/.atftp_history

O loʻo i ai le talimalo faʻasoa, lea e faʻaogaina ai le server e faʻafeiloaʻi ai le tele o upega tafaʻilagi. E masani lava, faʻatasi ai ma lenei faʻatulagaga, o punaoa taʻitasi o loʻo i ai lona lava tagata faʻaoga faʻatasi ai ma se lisi faʻapitoa fale ma se talimalo virtual. O lea la, afai e le saʻo le faʻatulagaina, e mafai ona e mauaina le faila .bash_history i le root directory o le upega tafaʻilagi.

Su'esu'e mo fa'aupuga i totonu o le faila faila ma osofa'iga i faiga fa'atasi

Fa'atonu faila mo 'au'aunaga eseese e ono mafai ona faitau e lau tagata fa'aoga nei. I totonu ia i latou e mafai ona e mauaina faʻamaoniga i tusitusiga manino - faʻaupuga mo le mauaina o se faʻamaumauga poʻo auaunaga faʻapitoa. E mafai ona fa'aoga tutusa le upu fa'aoga e maua ai le fa'amaumauga ma fa'ataga ai le a'a fa'aoga (tagata faigaluega fa'amaonia).
E tupu o fa'amaoniga na maua e fa'atatau i auaunaga i isi 'au. O le atinaʻeina o se osofaʻiga i luga o atinaʻe e ala i se tagata faʻafefeteina e le sili atu le leaga nai lo le faʻaogaina o isi 'au. E mafai foi ona maua faiga lata ane e ala i le su'eina o tuatusi IP ile faila faila.

grep -lRi "password" /home /var/www /var/log 2>/dev/null | sort | uniq #Find string password (no cs) in those directories
grep -a -R -o '[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}' /var/log/ 2>/dev/null | sort -u | uniq #IPs inside logs

Afai o loʻo i ai i le 'au faʻafefeteina se 'upega tafaʻilagi e mafai ona maua mai le Initaneti, e sili atu le vavaeeseina o ana ogalaau mai le sailiga mo tuatusi IP. O tuatusi o tagata faʻaoga punaoa mai le Initaneti e foliga mai e le aoga ia i tatou, ae o tuatusi o le upega tafaʻilagi (172.16.0.0/12, 192.168.0.0/16, 10.0.0.0/8) ma le mea latou te o i ai, faʻamasino i ogalaau. , atonu e fiafia.

Sudo

O le sudo poloaiga e tuʻuina atu ai i le tagata faʻaoga le malosi e faʻatino ai se faʻatonuga i le aʻa faʻaoga e faʻaaoga ai a latou lava faʻaupuga pe leai foi se faʻaogaina o se faʻaupuga. O le tele o gaioiga i Linux e manaʻomia ai aʻa, ae o le taʻavale e pei o aʻa e manatu o se faiga leaga tele. Nai lo lena, e sili atu le faʻaogaina o faʻatagaga filifilia e faʻatino ai faʻatonuga i le aʻa. Ae ui i lea, o le tele o meafaigaluega Linux, e aofia ai mea masani e pei o vi, e mafai ona faʻaogaina e faʻateleina avanoa i auala faʻatulafonoina. Ina ia maua se auala talafeagai, ou te fautuaina e suʻe iinei.

O le mea muamua e tatau ona e faia pe a e mauaina le avanoa i le polokalama o le faʻataʻitaʻiina lea o le sudo -l poloaiga. O le a faʻaalia le faʻatagaga e faʻaaoga ai le sudo command. Afai e maua se tagata faʻaoga e aunoa ma se faʻaupuga (pei o le apache poʻo le www-data), e le mafai ona faʻaogaina le faʻaogaina o le faʻaogaina o le vector e ala i sudo. A faʻaaoga sudo, o le a fesili le polokalama mo se faʻaupuga. O le a le mafai ona e setiina se faʻaupuga e faʻaaoga ai le passwd command pe; o le a fesili mo le faʻaoga o loʻo iai nei. Ae afai o loʻo avanoa pea sudo, o lona uiga e tatau ona e suʻeina:

  • so'o se fa'aliliuupu, so'o se tasi e mafai ona fa'atupuina se atigi (PHP, Python, Perl);
  • so'o se fa'atonu tusitusiga (vim, vi, nano);
  • soo se tagata matamata (itiiti, sili atu);
  • soʻo se tomai e galue ai ma le faila faila (cp, mv);
  • Meafaigaluega o loʻo i ai galuega faatino i le bash, fefaʻasoaaʻi poʻo se faʻatonuga faʻatinoina (awk, find, nmap, tcpdump, man, vi, vim, ansible).

Suid/Sgid

E tele tusi lesona i luga ole Initaneti o lo'o fautuaina ai le aoina o suid/sgid uma, ae o se tala e seasea maua mai ai mea e fai i nei polokalame. O filifiliga mo le faʻateleina o avanoa e le amanaʻia ai le faʻaogaina o faʻaoga e mafai ona maua iinei. E le gata i lea, o le tele o faila faila e iai faʻafitauli faʻapitoa mo le OS version, mo se faʻataʻitaʻiga.

I se lalolagi lelei, e te faʻatautaia uma afifi faʻapipiʻi e ala ile searchsploit. I le faʻatinoga, e tatau ona faia lenei mea i polokalame sili ona lauiloa e pei ole sudo. O lo'o iai fo'i le avanoa e fa'aoga ma lagolago ai le atina'eina o mea faigaluega otometi e fa'amanino ai le manaia, mai le va'aiga o le fa'ateleina o fa'amanuiaga, faila fa'atinoina ma suid/sgid bits seti. O le a ou tuʻuina atu se lisi o ia meafaigaluega i le vaega tutusa o le tusiga.

Fa'amatalaga tusitusia o lo'o fa'atautaia e Cron po'o Init i totonu ole tala ole Root

O galuega Cron e mafai ona fa'atino i lalo o fa'aoga eseese, e aofia ai a'a. Afai e fa'atulaga se galuega cron ma se feso'ota'iga i se faila e mafai ona fa'atinoina, ma o lo'o avanoa mo oe e tusi ai, e faigofie lava ona suia i se mea leaga ma fa'ateleina fa'amanuiaga. Ae ui i lea, ona o le faaletonu, o faila ma galuega cron e mafai ona faitau e soʻo se tagata faʻaoga.

ls -la /etc/cron.d  # show cron jobs 

E tutusa le tulaga ma init. O le eseesega o galuega i le cron e faʻatinoina i lea taimi ma lea taimi, ma i init - i le amataga o le polokalama. O le fa'agaioiga e mana'omia ai le toe fa'afouina o le faiga, ma o nisi auaunaga e ono le amataina (pe a le'i resitalaina i le amataga).

ls -la /etc/init.d/  # show init scripts 

E mafai fo'i ona e su'e faila e mafai ona tusia e so'o se tagata fa'aoga.

find / -perm -2 -type f 2>/dev/null # find world writable files

O le metotia e lauiloa tele; faʻaaogaina ma le faʻaeteete e le au pulega faʻapitoa le chmod command. Ae ui i lea, i luga ole Initaneti, o le tele o tusi lesona o loʻo faʻamatalaina le faʻatulagaina o aia tatau. O le "naʻo le faʻaogaina" faiga a le leai o se poto masani faʻafoe faiga e fatuina ai avanoa mo le faʻateleina o faʻamanuiaga i mataupu faavae. Afai e mafai, e sili atu le vaʻai i le tala faʻasolopito mo le faʻaogaina le saogalemu o le chmod.

chmod +w /path 
chmod 777 /path

Mauaina o atigi avanoa i isi tagata fa'aoga

Matou te vaʻavaʻai i le lisi o tagata faʻaoga i /etc/passwd. Matou te gauai atu ia i latou e i ai se atigi. E mafai ona e fa'aleagaina nei tagata fa'aoga - e mafai e ala i le fa'ai'uga fa'aoga o le a iu lava ina mafai ona fa'ateleina avanoa.

Ina ia faʻaleleia le saogalemu, ou te fautua atu ia e tausisi pea i le mataupu faavae o le faʻatauvaʻa itiiti. E talafeagai foi le faʻaalu o le taimi e siaki ai faʻasalalauga le saogalemu e mafai ona tumau pe a maeʻa faʻafitauli - o le "tiute faʻapitoa" lea a le pule o le polokalama.

Code tusitusia e le tagata lava ia

E taua le va'ava'ai toto'a i faila fa'atino i le lisi o fale o le tagata fa'aoga ma le 'upega tafa'ilagi (/var/www/, se'i vagana ua fa'ailoa mai). O nei faila atonu e foliga mai o se fofo le saogalemu ma o loʻo i ai ni tootoo mataʻina. O le mea moni, afai ei ai sau ituaiga faʻavae i totonu o le upega tafaʻilagi, e leai se uiga e suʻe ai le leai o se aso i totonu o se vaega o le pentest, ae e fautuaina e suʻe ma suʻesuʻe suiga masani, plugins ma vaega.

Ina ia faʻateleina le saogalemu, e sili atu, pe a mafai, aloese mai le faʻaaogaina o faʻamaoniga i tusitusiga a le tagata lava ia, faʻapea foʻi ma gaioiga e ono lamatia ai, e pei o le faitau /etc/shadow poʻo le faʻaogaina o id_rsa.

Si'itia o avanoa e ala i le fa'aogaina o fa'aletonu

Aʻo leʻi taumafai e faʻateleina avanoa e ala i le faʻaogaina, e taua le malamalama fa'aliliuina faila i le 'au fa'amoemoe. I le faʻaopoopoga i meafaigaluega masani e pei o ssh, ftp, http (wget, curl) o loʻo i ai le atoaga "zoo" o avanoa.

Ina ia fa'aleleia le saogalemu o le faiga, fa'afou e le aunoa i le mea fou fale mautu fa'aliliuga, ma taumafai fo'i e fa'aoga tufatufaga na fa'atulaga mo Enterprise. A leai, e seasea ae o loʻo i ai tulaga e faʻaleleia ai le faʻaleleia e le mafai ai ona faʻaogaina le polokalama.

Fa'aaogaina auaunaga o lo'o fa'agaoioia i lalo ole a'afiaga ole fa'aoga

O nisi o auaunaga Linux e fa'aa'a. E mafai ona maua i latou i le faʻaaogaina o le poloaiga ps aux | a'a grep. I lenei tulaga, o le auaunaga e le mafai ona faʻasalalau i luga ole Initaneti ma avanoa i le lotoifale. Afai o loʻo i ai ni faʻaoga lautele, e mafai ona faʻaogaina ma le saogalemu: o se faʻalavelave tautua i le tulaga o le toilalo e sili atu le taua nai lo le paʻu o le OS.

ps -aux | grep root # Linux

O le mataupu sili ona manuia e mafai ona mafaufauina o le faʻaogaina o se tautua hacked i le tulaga o le tagata faʻaoga aʻa. O le fa'agaioiina o le auaunaga a le SMB e maua ai le avanoa fa'apitoa ole SYSTEM ile Windows system (fa'ata'ita'iga, e ala ile ms17-010). Ae ui i lea, e le masani ai i luga o faiga Linux, o lea e mafai ai ona e faʻaaluina le tele o taimi e faʻateleina avanoa.

Fa'aaogaina o le Linux Kernel Vulnerabilities

O le ala mulimuli lea e tatau ona e uia. O le le manuia o le gaioiga e mafai ona oʻo atu ai i se faʻalavelave faʻafuaseʻi, ma pe a toe faʻafouina, o nisi o auaunaga (e aofia ai ma mea na maua mai ai le atigi muamua) atonu e le amataina. E tupu na galo i le pule le faʻaogaina o le systemctl enable command. Ma o le a mafua ai le tele o le le fiafia i lau galuega pe a le malilie i ai le taotoga.
Afai e te filifili e faʻaoga le faʻailoga puna mai exploitdb, ia mautinoa e faitau faʻamatalaga i le amataga o le tusitusiga. Faatasi ai ma isi mea, e masani ona taʻu mai pe faʻafefea ona faʻapipiʻi saʻo se faʻaogaina. Afai e te paie pe tatau ona e faia "anafi" ona o taimi e gata ai, e mafai ona e suʻeina fale teu oloa ma mea ua uma ona tuʻufaʻatasia, mo se faʻataʻitaʻiga. Ae ui i lea, e tatau ona e malamalama i lenei tulaga o le ae maua se puaa i totonu o le poke. I le isi itu, afai e malamalama se tagata fai polokalame i lalo i le byte le auala e galue ai se komepiuta ma le polokalame o loo ia faaaogāina, o le a ia lē tusia se laina se tasi o code i lona olaga atoa.

cat /proc/version
uname -a
searchsploit "Linux Kernel" 

metasploit

Ina ia mafai ona pu'e ma taulimaina le feso'ota'iga, e sili atu le fa'aogaina o le fa'aogaina/multi/handler module. O le mea autu o le setiina o le totogi saʻo, mo se faʻataʻitaʻiga, generic/shell/reverse_tcp poʻo le generic/shell/bind_tcp. O le atigi na gaosia e Metasploit e mafai ona faʻaleleia i le Meterpreter e faʻaaoga ai le post/multi/manage/shell_to_meterpreter module. Faatasi ai ma Meterpreter, e mafai ona e otometi le faʻaogaina o le faʻagasologa o le faʻaaogaina. Mo se faʻataʻitaʻiga, o le post/multi/recon/local_exploit_suggester module e siaki le tulaga, fausaga ma faʻalapotopotoga e manaʻomia mo le faʻaogaina ma fautuaina Metasploit modules e faʻateleina avanoa i luga o le polokalama faʻatatau. Faʻafetai i Meterpreter, faʻateleina avanoa i nisi taimi e oʻo mai i le faʻalauiloaina o le module manaʻomia, ae o le hacking e aunoa ma le malamalama i mea o loʻo tupu i lalo o le pulou e le "moni" (e tatau lava ona e tusia se lipoti).

Meafaigaluega

Meafaigaluega mo le faʻaogaina o faʻamatalaga faʻapitonuʻu o le a faʻaolaina ai oe i le tele o taumafaiga ma le taimi, ae na o latou lava latou te le mafai ona iloa atoatoa le ala i le faʻateleina o avanoa, aemaise lava i le tulaga o le faʻaogaina o faʻafitauli o le fatu. O mea faigaluega fa'aautometi o le a fa'atinoina uma tulafono talafeagai mo oe e aoina fa'amatalaga e uiga i le faiga, ae e taua fo'i le mafai ona iloilo maua fa'amaumauga. Ou te faʻamoemoe o le a aoga laʻu tusiga ia te oe i lenei tulaga. Ioe, e tele isi mea faigaluega nai lo le mea o le a ou lisiina i lalo, ae latou te faia uma lava le mea e tasi - o se mea lea o le tofo.

Linpeas

O se Tula talu ai nei, o le tautinoga muamua na amata ia Ianuari 2019. O la'u meafaigaluega e sili ona ou fiafia iai i le taimi nei. O le manatu o lo'o fa'ailoa mai ai fa'ailoga e sili ona mata'ina o le fa'ateleina o fa'amanuiaga. Ioe, e sili atu ona faigofie le mauaina o se suʻesuʻega faʻapitoa i lenei tulaga nai lo le faʻavasegaina o faʻamatalaga mataʻutia monolithic.

LinEnum

O la'u meafaigaluega lona lua e sili ona ou fiafia i ai, e aoina ma fa'amaopoopo fa'amaumauga na maua ona o fa'amaumauga a le lotoifale.

Linux-exploit-suggester (1,2)

Ole fa'aoga lea ole a au'ili'ili le faiga mo tulaga fa'aoga talafeagai. O le mea moni, o le a faia le galuega e tutusa ma le Metasploit module local_exploit_suggester, ae o le a ofoina atu fesoʻotaʻiga i le faʻaaogaina-db code source nai lo Metasploit modules.

Linuxprivchecker

O lenei tusitusiga o le a aoina ma faʻapipiʻi i ni vaega se aofaʻi tele o faʻamatalaga e mafai ona aoga mo le fausiaina o se vector mo le faʻateleina o avanoa.

O le isi taimi o le a ou faʻamatalaina auiliili fa'aeaina o fa'amanuiaga ile Linux OS e ala ile suid/sgid.

puna: www.habr.com

Faaopoopo i ai se faamatalaga