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

Re: Homeverzeichnis in /etc/passwd als relativer Pfad


Am 28.10.2012 01:09, schrieb Raphael Eiselstein:
> 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.

Nochmal: Das weisst du nicht, da du nicht weiÃ?t was . ist.

> > 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?

Es ist voellig egal, ob du in deinem Script den Pfad nicht wechselst. Du hast
aber keinerlei Einfluss darauf, was die von dir benutzten anderen Programme
oder Scripte machen. Es sei denn, du pruefst die alle, was kaum realistisch
ist. Woher z.B. weisst du, daÃ? rsync nicht ssh aufruft, nachdem rsync in ein
anderes Verzeichnis gewechselt ist?

Gruss,

Alexander



-- 
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/