Poistat proxychains komennosta, käynnistät sen uudelleen ja näet yhä kääreen käynnistysviestin. Tarkista käynnistysympäristö ennen kuin etsit sovelluksen asetusta.

Linuxissa LD_PRELOAD pyytää dynaamista linkittäjää lataamaan määritetyt jaetut objektit ennen tavallisia kirjastoja. Välityspalvelinkääreet voivat käyttää tätä mekanismia tuettujen verkkokutsujen sieppaamiseen. Jos joku vei muuttujan ympäristöön kuoressa, myöhemmät lapsiprosessit voivat periä sen, vaikka niiden komentoriveillä ei olisi kääreen etuliitettä.

Ensimmäinen vain luku -tarkistus siinä kuoressa on:

printf '%s\n' "$LD_PRELOAD"

Etsi välityspalvelinkääreen kirjastoa, mutta pidä mahdollisena, että muuttuja luettelee myös muita tarkoituksella ladattuja kirjastoja. Kaikkien merkintöjen sokea poistaminen voi häiritä toista työkalua.

Vaihda käynnistin ja käynnistä ohjelma uudelleen

Poista tahaton välityspalvelimen esilataus ympäristöstä, joka käynnistää kohdeohjelman. Jos käynnistystiedosto tai käynnistin vie sen, korjaa myös se lähde. Bash-käynnistyksissä noudata käynnistystiedostojen järjestystä. Puhtaan kuoren uusi lapsi on eri tapaus kuin vanhan päätteen tai IDE:n lapsi, joka pitää muuttujan yhä.

Ympäristömuuttujan poistaminen ei pura kirjastoa prosessista, joka on jo käynnistynyt sen kanssa. Käynnissä oleva sovellus voi siis pitää kääreen, kunnes se käynnistetään uudelleen korjatun käynnistyspolun kautta.

Jos muuttuja puuttuu, tutki muita määritettyjä esilatauslähteitä, kuten /etc/ld.so.preload, ja todellinen käynnistin. Mekanismilla on rajat: staattiset suoritettavat tiedostot, suorat järjestelmäkutsut ja turvallisen suorituksen rajoitukset voivat käyttäytyä eri tavoin. Sudon kanssa kääreen järjestys on tärkeä. Peritty esilataus selittää odottamattoman sieppauksen; se ei todista, että kaikki verkkoliikenne käyttää välityspalvelinta.

Aiheeseen liittyvät artikkelit