OVH Cloud OVH Cloud

Chemin du binaire d'un process

4 réponses
Avatar
Kevin Tyrian
Bonjour,

J'ai besoin de récupérer dans une appli le chemin complet de son propre
binaire.
Jusqu'ici j'allais lire /proc/<pid>/exe qui est un lien symbolique sur le
binaire en question.

Depuis que j'ai modifié mon appli (qui est un daemon) pour faire un setuid
(et ne plus
fonctionner en root), j'ai perdu la possibilité de lire le lien symbolique.

Connaissez-vous un autre moyen de retrouver le chemin complet du binaire de
l'application ?
Merci

Kevin

--
Pour contacter l'équipe de modération : moderateurs-fcolm@efrei.fr
ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans
la liste de distribution des modérateurs.

4 réponses

Avatar
Emmanuel Florac
Le Wed, 19 Oct 2005 11:34:06 +0000, Kevin Tyrian a écrit :


Connaissez-vous un autre moyen de retrouver le chemin complet du binaire de
l'application ?



Selon le langage utilisé (que tu n'as pas précisé), quelque chose comme
"echo $0" ou "print $0;" peut suffire. Tu peux aussi utiliser la commande
"ps -ef" ou un équivalent (encore selon le langage/librairies utilisés)
pour obtenir l'info depuis la table de processus du système (le programme
connaissant son PID, c'est facile).

--
Dix grammes d'abstraction valent des tonnes de bricolage.
Loi de Booker.

--
Pour contacter l'équipe de modération :
ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans
la liste de distribution des modérateurs.
Avatar
R12y
On Wed, 19 Oct 2005 11:55:34 +0000, Emmanuel Florac wrote:
"ps -ef" ou un équivalent



Sur un serveur qui s'est fait hacké, j'ai vu passer des process, dans
'top' qui sont affiché comme "./bash".
Mais du coup, on ne sait pas ou est le "." dans "./bash".
Tout à fait par hasard (à l'époque) j'avais rasé /tmp et il a disparu.
J'en ai déduit que c'était quelquepart dedans. Mais bon là, le phénomène
ne s'est pas reproduit, mais je suis curieux de savoir comment j'aurais dû
chercher, et éventuellement comment simuler ce malicieux binaire qui
s'affichait comme "./bash"...

--
Rakotomandimby Mihamina,
http://aspo.rktmb.org/activites/infogerance
Serveurs* sous Debian, Fedora...
(*) Serveurs!?: http://fr.search.yahoo.com/search?p=serveurs+dedies

--
Pour contacter l'équipe de modération :
ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans
la liste de distribution des modérateurs.
Avatar
Stephane Chazelas
On 24 Oct 2005 13:06:29 GMT, R12y wrote:
On Wed, 19 Oct 2005 11:55:34 +0000, Emmanuel Florac wrote:
"ps -ef" ou un équivalent



Sur un serveur qui s'est fait hacké, j'ai vu passer des process, dans
'top' qui sont affiché comme "./bash".
Mais du coup, on ne sait pas ou est le "." dans "./bash".
Tout à fait par hasard (à l'époque) j'avais rasé /tmp et il a disparu.
J'en ai déduit que c'était quelquepart dedans. Mais bon là, le phénomène
ne s'est pas reproduit, mais je suis curieux de savoir comment j'aurais dû
chercher, et éventuellement comment simuler ce malicieux binaire qui
s'affichait comme "./bash"...


[...]

Tu peux avoir le chemin absolu de l'executable par un
readlink -f /proc/<pid>/exe

lsof et strace sont tes amis pour savoir ce que ce processus
fait.

Quant a simuler ce fameux binaire:

cd /bin
./bash -c ps -f

rien de sorcier.

--
Stephane

--
Pour contacter l'équipe de modération :
ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans
la liste de distribution des modérateurs.
Avatar
[SauronDeMordor]
R12y a écrit :
On Wed, 19 Oct 2005 11:55:34 +0000, Emmanuel Florac wrote:

"ps -ef" ou un équivalent




Sur un serveur qui s'est fait hacké, j'ai vu passer des process, dans
'top' qui sont affiché comme "./bash".
Mais du coup, on ne sait pas ou est le "." dans "./bash".
Tout à fait par hasard (à l'époque) j'avais rasé /tmp et il a disparu.
J'en ai déduit que c'était quelquepart dedans. Mais bon là, le phénomène
ne s'est pas reproduit, mais je suis curieux de savoir comment j'aurais dû
chercher, et éventuellement comment simuler ce malicieux binaire qui
s'affichait comme "./bash"...



pour les machines "public" il est judicieux de mettre /tmp et /var/tmp en noexec et nosuid
ce genre de petite choses permette pas mal d eviter les bug de secu liee a apache et consort. car l exploitation du dit
bug entraine rien (si execution dans /tmp)

--
Pour contacter l'équipe de modération :
ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans
la liste de distribution des modérateurs.