GDB 17 vÀljaanne

Esitatud on GDB 17.1 siluri vabastus (esimene vÀljaanne 17.x seeriast, 17.0 haru kasutati arendamiseks). GDB toetab lÀhtefailide silumist laia valiku programmeerimiskeelte (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust jne.) puhul erinevatel riistvaralisel (i386, amd64, ARM, Power, Sparc, RISC-V, LoongArch jne.) ja tarkvaralisel platvormil (GNU/Linux, *BSD, Unix, Windows, macOS).

MÔned silmapaistvamad tÀiustused:

  • X86-64 sĂŒsteemidele on rakendatud varjatud virna (shadow stack) tugi, mis ilmus Linuxi tuumas versioonis 6.6 ja mis vĂ”imaldab blokeerida paljusid eksploite, kasutades Intel protsessorite riistvaralist kaitset funktsioonist tagasiviimise aadressi kirjutamise vĂ€ltimiseks, juhul kui virnas toimub ĂŒlevool. Kaitse olemus seisneb selles, et pĂ€rast kontrolli ĂŒleandmist funktsioonile salvestab protsessor tagasiviimise aadressid mitte ainult tavalisel virnal, vaid ka eraldi „varjatud“ virnas, mida ei saa otse muuta. Enne funktsiooni lĂ”petamist tĂ”mmatakse tagasiviimise aadress varjatud virnast ja vĂ”rreldakse pĂ”hivarna tagasiviimise aadressiga.
  • Lisatud on vĂ”imalus siluda Linuxi programme, mis on koostatud AArch64 arhitektuuri jaoks ja kasutavad GCS-i (Guarded Control Stack). GCS pakub vahendeid funktsiooni tagasiviimise aadresside riistvaraliseks kaitseks ja eksploitide blokeerimiseks, mis kasutavad tagasiviitetehnika meetodeid (ROP — Return-Oriented Programming, eksploite vĂ”ib luua juba olemasolevate masiinijuhiste tĂŒkke, mis lĂ”ppevad juhtimise tagastamise kĂ€suga).
  • Rv64gc arhitektuuriga sĂŒsteemide jaoks on rakendatud tĂ€ielik tugi programmi tĂ€itmise protsessi salvestamiseks silumiseks tagasiteel ja koodi osade korduvaks taasesitamiseks.
  • KĂ€sku „info threads” on lisatud valikud „-stopped” ja „-running”, et nĂ€idata ainult peatudud vĂ”i ainult kĂ€ivitatud teemasid.
  • KĂ€sk „info sharedlibrary” Linuxi ja FreeBSD platvormidel nĂ€itab kĂ”iki mĂ€lu aadresse, mis on eraldatud jagatud raamatukogule (varem nĂ€idati ainult pĂ”hiadresse ja .text sektsiooni adresse).
  • Tagatud on olukordade (checkpoint) kasutamise vĂ”imalus Linuxis samal ajal mitme protsessi silumiseks.
  • Laienenud on lingijate nimede (linker namespace) tugi.
  • Vigade ja hoiatuste eristamiseks on kasutatud emoji mĂ€rgid.
  • Linux platvormil on olemas vĂ”imalus juurdepÀÀsuks kohalikele niitide muutujatele (Thread-Local Storage, TLS), mida kasutatakse, kui libthread_db teeki ei ole. See vĂ”imalus on saadaval arhitektuuride x86_64, aarch64, ppc64, s390x ja riscv puhul, kui see on kokku pandud GLIBC vĂ”i MUSL-ga.
  • Lisatud kĂ€sk „set riscv numeric-register-names“, et kuvada RISC-V registreid nende numbriliste identifikaatorite abil, mitte ABI-nimede jĂ€rgi.
  • Parandatud on Python API-d. Lisatud uued klassid gdb.Color ja gdb.ParameterPrefix, atribuut gdb.Value.is_unavailable, funktsioon gdb.warning(). Vanade Python versioonide tugi on lĂ”petatud — toetatakse ainult Python 3.4 ja uuemaid versioone.
  • Parandatud on Guile API-d. Lisatud tĂŒĂŒp „”.
  • DAP (Debugger Adapter Protocol) protokolli vĂ”imalusi on laiendatud: rakendatud on toetust pĂ€ringutele „completions“ ja lisatud valik „—binary-output“, et keelata ridade vahetuse sĂŒmbolite teisendamine Windowsi platvormil.
  • Lisatud muutujad $_colorsupport (terminaali toetatud vĂ€rvide ruumide nimekiri), $linker_namespace_count ja $_linker_namespace (aktiivsete lingi ruumide nimekiri).
  • Lisatud valikud „—disable-gdb-compile“ kompileerimisseadmete keelamiseks, samuti „—disable-gdb-dwarf-support“ ja „—disable-gdb-mdebug-support“, et keelata DWARF ja mdebug/ecoff formaadi silumine teabe toetus.
  • gdbserver ei toeta enam UST-d (staatiline jĂ€lgimispunkt).

Allikas: opennet.ru

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster