HelloWorld logo
10.06.2026. ·
2 min

Kako direktno čitati i menjati memoriju aktivnog Linux procesa kroz fajl

HelloWorld

Pristup i modifikacija radne memorije aktivnog procesa u Linux sistemima mogu se izvršiti direktno kroz virtuelni fajl sistem pomoću specifičnog interfejsa /proc/<pid>/mem. Ova funkcionalnost omogućava inženjerima da zaobiđu robusne i često komplikovane sistemske pozive poput ptrace mehanizma. Korišćenjem standardnih funkcija za manipulaciju fajlovima otvara se mogućnost za kreiranje naprednih alata za otklanjanje grešaka i analizu stanja aplikacija u realnom vremenu.

Zašto filozofija da je sve fajl pada na niskom nivou

Iako se u Unix svetu često ističe pravilo da je sve fajl, u praksi se mrežni soketi i identifikatori procesa oslanjaju na potpuno različite imenske prostore i API sisteme. Poznati trikovi unutar bash ljuske koji mapiraju TCP veze kroz virtuelne putanje ne funkcionišu kada se proslede standardnim uslužnim programima. Zbog toga se inženjeri često okreću file descriptor semantici kako bi povezali nepovezane delove operativnog sistema kroz jedinstven brojčani identifikator.

Pregled metapodataka o procesima kroz pseudo-fajl sistem /proc uglavnom nudi statičan uvid u parametre koje prikazuju alati kao što su top ili ps. Međutim, unutar tog direktorijuma krije se specifičan fajl mem koji na prvi pogled vraća grešku pri pokušaju običnog čitanja. Da bi se iz njega izvukli korisni podaci, program mora eksplicitno koristiti operacije pomaka kao što su lseek ili pread.

Samomedikacija procesa i kreiranje snimaka memorije

Pravilnim definisanjem memorijskog ofseta aplikacija može izvršiti operaciju nad sopstvenim adresnim prostorom koristeći funkciju pwrite. Ovaj pristup omogućava direktnu izmenu vrednosti varijabli u RAM memoriji bez korišćenja standardnih programskih pokazivača. Na ovom principu se zasniva i modernizovani alat memfetch koji omogućava kreiranje kompletnih binarnih snimaka upisivih sekcija memorije bilo kog pokrenutog procesa.

Istorijski gledano, starije verzije Linux jezgra dopuštale su čak i mapiranje ovog fajla u sopstveni adresni prostor pomoću funkcije mmap. Ta praksa je brzo ukinuta jer je sinhronizacija tabela stranica često dovodila do potpunog rušenja operativnog sistema. Danas ovaj fajl sistem ostaje elegantan inženjerski metod za zaobilaženje anti-debugging zaštita i ekstrakciju podataka iz blokiranih aplikacija.

 

Napiši komentar

Iz ove kategorije