Ego sum radix. Intellectus Linux OS Privilegium Escalation

Primam quartam partem 2020 parandi OSCP exemi exegi. Investigatio notitiarum in Google et multum "caecorum" conatum omne meum otium suscepit. Versa est imprimis difficilia machinationes ad evolutionem privilegiorum intelligendas. Cursus PWK huic argumento multum attendit, at materiae emendatae semper non sunt satis. Multa manualia in Interreti praecepta utilissima sunt, sed non sum fautor incautus sequentes commendationes sine intellectu quo hoc ducet.

Vellem communicare tecum quae potui discere in praeparatione et prospero exami transitu (including excursiones periodicas in Hack The Box). Intimum grati animi sensum percepi pro omnibus informationibus quae me adiuverunt ad tentandam duriorem viam conscientiae ambulandam, nunc tempus est meum ad communitati reddendum.

Ducem privilegii propagationis tibi dare volo in OS Linux, quod includit analysim vectorum communium et notarum affinium quas certo debes. Saepe, ipsae machinationes privilegii propagationis satis simplices sunt, difficultates oriuntur cum informationes structurae et analyticae. Ideo decrevi "ire speculativae" incipere, et tunc considerare quemlibet vectorem in articulo separato. Spero me servaturum te tempus rei studere.

Ego sum radix. Intellectus Linux OS Privilegium Escalation

Cur ergo privilegium propagationis vel in 2020 possibile est, si methodi diutissime notae fuerunt? Revera, si ratio recte tractat usor, revera non poterunt privilegia in ea augeri. Quaestio principalis global quae tales occasiones oriuntur insecure configuratione. Praesens programmatum programmatum programmatum quae vulnerabilitatem in systemate continentium est etiam specialis casus non tutae configurationis.

Privilegium propagationis per incertam configurationem

Primum de incerto configuratione agamus. De primo cum Doctorum IT saepe utuntur manibus et opibus sicut StackOverflowex quibus multa tuta imperia ac configs continent. Magnum exemplum est nuntium quod codicem ex Stackoverflow exscriptus errori continebat. Admin peritus jambum videbit, sed hoc in mundo optimo. Etiam doctorum competentium auctus quod inposuit posse errare. Finge administratorem parat et approbat documenta in altera tenera, simul in novam technologiam, quae in altera parte introducitur, cum periodice solvendo opera usoris sustineat. Et tunc negotium datur cito duos machinis virtualis suscitandi et operas in illis evolvit. Quid censes, quid sit probabile quod admin simpliciter non animadvertit jambum? Tunc artifices mutant, sed fusum manent, dum societates semper contendunt sumptuum minuere, in iis pro IT peritis.

Pseudo testa et jailbreak

Testa systematis in periodo productionis consecuta saepe circumscribitur, praesertim si id consecutus es servo usoris caesim interreti. Exempli gratia, testarum restrictiones vos impediunt quominus sudo cum errore praecipimus;

sudo: no tty present and no askpass program specified

Cum concha, commendo curvum terminatio creando, exempli gratia cum Pythone.

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

Quaeris: "Cur mille iussionibus opus est, si uno possum uti, verbi gratia, imagini transferre?" Re vera systemata aliter configurantur, altera hospes Python institui non potest, sed Perl praesto esse potest. Disciplina est ut res familiares in systemate sine instrumentis nota facere possit. A completum album linearum inveniri potest hic.

A low privilegium testa obtineri potest usura teams 1 и teams 2 (mire etiam GIMP).

Visum imperium historia

Linux historiam omnium exsecutorum mandatorum in tabula colligit ~ / .Bash_history. Si ministrans in usu activo est eiusque historia non purgatur, casus bonus est ut documentorum in hoc documento inveniantur. Historiae repurgandae plerumque incommodum est. Si administrator per mandatum decem gradus eligere cogatur, utique commodius erit ei hoc mandatum ex historia vocare quam iterum inire. Plus, multi non sciunt de hoc "trucidabunt". Si conchae sunt alternae sicut Zsh vel Piscium in systemate, habent suam historiam. Mandata in quavis testa ostentare historiam, mox typus mandatum historiae.

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

Communis est obnoxius, in quo ministrans pluribus locis hospitari solet. Typice, cum hac configuratione, unaquaeque subsidia suum usum habet cum directorio separato et exercitu virtuali. Ita, si male configuratur, .bash_historiale documentum invenire potes in indice radicis ope- ris interreti.

Tesserae in tabella ratio invenire et impetus in systemata adjacent

Configurationis fasciculi pro variis officiis legi possunt a tuo currenti usuario. In eis invenire potes documenta in textu perspicuo - passwords pro accessu datorum vel affinium officiorum. Eadem tessera adhiberi potest tum ad accessum datorum datorum et auctorizo ​​radicem usoris (stipes credentialis).
Contingit ut documentorum inventa in aliis exercitiis pertinentia ad officia pertinent. Progressio oppugnationis infrastructurae per exercitum aedilis non peior est quam abusio aliarum exercituum. Systemata adiacentia reperiri etiam possunt per inscriptiones IP respicientes in systematis tabellae.

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

Si suspectus hospes telam applicationem e Interreti positam habet, melius est eius acta ab investigatione IP inscriptionum excludere. Inscriptiones utentium instrumentorum e Interreti abhorrent nobis utiles, sed inscriptiones retis internae (172.16.0.0/12, 192.168.0.0/16, 10.0.0.0/8) et quo abeant diiudicandis. acta, may be of interest.

sudo

Mandatum sudo permittit utentis imperium in contextu radicis cum tessera sua exsequi vel sine eo utatur. Multae operationes in Linux privilegiis radicis requirunt, sed ut radix cursus pessimo usu habetur. Sed melius est licentiam selectivam exsequendi mandata in contextu radicis applicandi. Multa tamen instrumenta Linux, inclusa quasi vi vexillum, adhiberi possunt ad privilegia legitimis modis escalata. Ut rectam viam invenias, commendo quaerere hic.

Primum est ut post accessum ad systema currere sudo -l imperium. Iusto mos mos praesent sudo mandamus veniam. Si utens sine tessera obtinetur (ut Apache vel www-data), vector sudo privilegii propagationis abhorret. Cum sudo utens, ratio tesseram postulabit. Imperio passwd utens ut tesseram ponat etiam non laborabit, tesseram usoris hodiernam postulabit. Sed si sudo adhuc praesto est, re vera debes quaerere;

  • quilibet interpretum concham pariunt (PHP, Python, Perl);
  • any text editors (vim, vi, nano);
  • aliquem visorem (minus, plus);
  • possibilitates quaevis operandi cum tabella systematis (cp, mv);
  • instrumenta quae in bash output habent, vel interactive vel tanquam mandatum exsecutabile (awk, reperio, nmap, tcpdump, man, vi, vim, ansible).

Suid/Sgid

Multae manuales in Interreti sunt quae omnia mandata suid/sgid aedificant, sed rarus articulus specialia dat quid cum his programmatis agat. Privilegium propagationis optiones quae usum rerum non habent ratione inveniri possunt hic. Plures etiam fasciculi exsecutabiles habent vulnerabilitates specificas pro versione OS; exempli gratia.

In mundo optimo, omnes fasciculi inaugurati per quaesita saltem currere debeas. In praxi, hoc fieri debet cum programmatibus popularibus sicut sudo. Semper etiam optio est utendi et fulciatur evolutioni instrumentorum automated quae illustrabit interesting, ex privilegio propagationis parte, executables cum bits suid/sgid. Indicem talium instrumentorum in sectione respondente articuli dabo.

Writable scripta currere per Cron vel Init in Radix contextu

Cron jobs currere potest in contextu diversorum utentium, inter radicem. Si munus est cum nexu cum documenti exsecutabili, et tibi scribendum est, facile illud cum maligno reponere potes et privilegium propagationis praestare. Eodem tempore, defalta, fasciculi cum muneribus cronicis praesto sunt ad legendum cuilibet usori.

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

Simile est cum init. Differentia est, quod opera in cron periodice exercentur, et in init - systematis startup. Pro operandi, necesse est ut systema reboot, dum quaedam officia non oriri possunt (si in autoload non essent descripti).

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

Documenta scribenda ab aliquo usuario quoque quaerere potes.

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

Modus satis notus est, systema periti administratorum chmod praecepti diligenter utuntur. Nihilominus, in Tela, maxima pars manualium maximam iurum ambitum describet. "Iustum opus facere" accessus rationum imperitorum administratorum occasiones privilegii propagationis in principio creat. Si fieri potest, optimum est in historia praecepti ad usum chmod tutum inspicere.

chmod +w /path 
chmod 777 /path

Occupata testa aditus aliis users

Indicem usorum in /etc/passwd spectamus. Attendimus illis qui concham habent. Hos utentes brute potes - fieri potest ut per usorem indeficiens tandem privilegia augere possis.

Ad securitatem emendandam commendo te semper in principio minimi privilegii adhaerere. Hoc etiam sensum praebet tempus ad reprimendam incertorum figurarum quae post sollicitudinem manere potuerunt - hoc est "officium technicum" de administratoris systematis.

Scriptum codice auto-

Valet ad arctam aspectum executables in directorio domicilii usoris et telae (/var/www/ nisi aliud certum). Haec lima evenire potest solutionem omnino incertam esse et incredibilem fusum continere. Utique, si compagem aliquam in tuo directorio interretiali habes, non sensum efficit ut nulla dies in eo ut partem penultimi quaeras, sed commendatur ut modificationes, plugins et componentia morem invenire et studere.

Securitatem augere, melius est vitare documentorum in scriptis sui ipsius scriptis, tum in potentia periculosa functionis, sicut lectio /etc/umbra vel id_rsa abusiva, si fieri potest.

Elatio privilegii per abusionem vulnerabilium

Priusquam privilegia per abusionem elevare conetur, interest intelligere transferendi files in scopum exercitum. Praeter instrumenta usitata ut ssh, ftp, http (wget, curl), totum est "ferae" de possibilitatibus.

Ad securitatem systematis vestri emendare, eam regulariter renovare ad novissimam stabulum versiones, ac etiam distributiones in Enterprise dispositas uti conantur. Alioquin, raro, sed condiciones sunt ubi aptum upgrade systema inutile facit.

Abutitur Services Cursor in contextu radicis User

Quaedam Linux officia currunt ut radix usoris privilegiata. Inveniuntur utentes ps aux | radicis grep. Hoc in casu, ministerium in Tela nuntiari non potest et localiter praesto esse. Si res publicas habet, tuto adhiberi possunt: ​​ministerium fragor in casu deficiendi multo minore discrimine quam ruina OS.

ps -aux | grep root # Linux

Casus felicissimus considerari potest operatio servitutis detruncati in contextu radicis utentis. Operandi munus SMB SYSTEM praebet accessum privilegiatum in systematibus Fenestra (eg via ms17-010). Sed hoc commune non est in systematibus Linux, ut multum temporis in privilegii propagationis spatio consumere potes.

Agunt Linux Kernel Vulnerabilities

Extremum hoc iter arripere. Operatio infelicis ad fragorem systematis ducere potest, et in eventu reboot quaedam officia (inclusis iis per quae crustam originalem obtinere potuit) non resurgere. Contingit ut administrator simpliciter oblitus sit utendi systemctl praecepti perficiat. Plus multum displicentiae operae tuae faciet, si usus non convenerit.
Si fontes ex exploitdb uti volueris, commentarios in initio scripti legere scito. Inter alia dici solet quomodo hoc facinus recte componat. Si nimium piger esses vel propter notationes "heri" necessarias esses, repositoria quaerere potes cum rebus iam confectis; exempli gratia. Sed sciendum est, quod in hoc casu porcum habebis in poke. Contra, si programmator ad byte intellexerit quomodo computatrale opera et programmatibus utitur, lineam codicis in tota vita sua non scripsit.

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

Metasploit

Ut nexum capere et tractare, semper melius est uti moduli / multi/tracto. Summa est rectae payload, exempli gratia, generica/testa/reverce_tcp vel generica/testa/bind_tcp. Testa in Metasploit consecuta potest upgraded ad metropoleos utens post/multi/gere/schel_to_meterpretis moduli. Cum Meterprete, processum post-abustionem automate potes. Exempli gratia, moduli post/multi/recon/loci_exploit_suggester suggestum, architecturae et entia abusibilia coercet et Metasploit modulorum privilegii propagationis rationem in scopum suggerit. Per meterpretem, privilegium propagationis interdum ad recti moduli curritur, sed caesim sine intellectu quae sub cucullo evenit, verum non est (habes adhuc scribere relationem).

Tools

Instrumenta ad collectionem localem automate informationum multum operae et temporis servabunt, sed per se non possunt plene cognoscere viam privilegii propagationis, praesertim in casu vulnerabilitas nucleorum opprimendi. Instrumentorum automationum omnia mandata necessaria facient tibi ut informationes de ratione colligas, sed magni momenti est ut possis review data accepit. Articulum meum in hoc vobis utile fore spero. Nimirum plura instrumenta plura sunt quam infra enumerabo, sed omnia de eodem faciunt - plus est de gustu.

Linpeas

Instrumentum novum satis, primum committo datum est mensis Ianuarii anno MMXIX. Currently my favorite instrument. Solum linea est quod maxime interesting privilegium propagationis vectorum effert. Convenit, commodius est peritiam aestimationem in hoc gradu obtinere quam notitias rudis monolithicas parse.

LinEnum

Secundum ventus instrumentum meum, etiam notitias receptas colligit et ordinat ut effectus enumerationis localis.

linux-res-suggester (1,2)

Factio haec ratio aptas condiciones rerum ad res gestas excutiet. Re vera, idem officium faciet cum moduli Metasploit loci_exploit_suggester, sed nexus praebebit ad codicem fontem abutendi db potius quam modulorum Metasploit.

Linuxprivchecker

Hoc scriptum per sectiones colliget et ordinabit magnam copiam notitiarum quae utiles esse possunt ad formationem vectoris privilegii propagationis.

Alio tempore elaborare Linux privilegium propagationis per suid/sgid.

Source: www.habr.com

Add a comment