[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Homeverzeichnis in /etc/passwd als relativer Pfad


Hi Alexander,

On Fri, Oct 26, 2012 at 09:59:26AM +0200, Alexander Holler wrote:
> Ich habe das schon im IRC erklaert: "es" kannst du nicht
> kontrollieren. "es" ist relativ, d.h. die Aussage '"es" ist nicht
> beschreibbar' ist falsch. Du handelst dir mit einem relativen Pfad
> als home massenweise Fallstricke ein, es ist eine ueberaus schlechte
> Idee.

Ich schaetze, dass es mit "/proc/self/cwd/conf" nicht besser aussieht,
oder? In Bezug auf die moeglichen Fallstricke.
 
> Da meine Erklaerungen im IRC anscheinend schwierig zu verstehen
> waren,

waren sie nicht. Ich hab das Problem schon verstanden. Ich bin mir nicht
sicher, ob es in meinem Fall zutreffend ist oder ob andere Vorgaben aus
dem "Framework" nicht dafuer sorgen, dass es nicht passiert auch wenn es
potenziell gefaehrlich bleibt.

> hier nochmal eine Schritt fuer Schritt Anleitung um sich in
> den Fuss zu schieÃ?en:
> 
> ----------
> root@host ~ # useradd -M -b ./conf -c "dumb" owned
> useradd: Ungueltiges Basis-Verzeichnis »./conf«
> root@host ~ # #(hier muesste man schon nachdenklich werden)
> root@host ~ # useradd -c "dumb" owned
> root@host ~ # vim /etc/passwd # (home in ./conf aendern)
... oder gleich /proc/self/cwd/conf verwenden ;)

> root@host ~ # su owned
> bash: ./conf/.bashrc: Keine Berechtigung
> owned@host /root $ #(hmm, noch ein Hinweis, dass man evtl. etwas
> falsch macht)
> owned@host /root $ echo $HOME
> ./conf
> owned@host /root $ cd /tmp
> owned@host /tmp $ mkdir -p /tmp/remote/conf
> owned@host /tmp $ echo "echo OWNED" >/tmp/remote/conf/.bashrc
> owned@host /tmp $ mkdir /tmp/backup
> owned@host /tmp $ cd /tmp/backup
> owned@host /tmp/backup $ rsync -av /tmp/remote/* ./
> sending incremental file list
> conf/
> conf/.bashrc

./ und ./conf im Tool-Verzeichnis sind fuer den Tooluser nicht
beschreibbar. 
 
> sent 127 bytes  received 35 bytes  324.00 bytes/sec
> total size is 11  speedup is 0.07
> owned@host /tmp/backup $ bash
> OWNED
> owned@host /tmp/backup $
> ----------

Du gehst hier aber davon aus, dass mein Script aus irgendeinem Grund
sein cwd auf ein Datenverzeichnis aendert. Warum?

> Mir fallen da auf Anhieb noch etliche andere interessante Dateien
> ein, die man anstatt dem .bashrc anpassen koennte, um unerwartete
> Dinge erscheinen zu lassen.

Ich habe mal mitgenommen, dass ich die NFS-Fileserver jeweils mit 
"noexec" mounte, sodass zu mindest mal kein direkt ausfuehrbarer Code 
auf diese Weise den Weg in mein ./conf schafft. 
Ohnehin sollte man reine Daten-Filesysteme mit "noexec" mounten.
 
> Gruss,
> Alexander

Gruss
Raphael

-- 
Raphael Eiselstein <rabe@xxxxxxxxx>               http://rabe.uugrn.org/
xmpp:freibyter@xxxxxx  | https://www.xing.com/profile/Raphael_Eiselstein   
GnuPG:                E7B2 1D66 3AF2 EDC7 9828  6D7A 9CDA 3E7B 10CA 9F2D
.........|.........|.........|.........|.........|.........|.........|..



-- 
UUGRN e.V. http://www.uugrn.org/
http://mailman.uugrn.org/mailman/listinfo/uugrn
Wiki: https://wiki.uugrn.org/UUGRN:Mailingliste
Archiv: http://lists.uugrn.org/