Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Linux/UNIX Linuxverfechter finden hier Weggefährten.

Privates Block Device

Diskussion: Privates Block Device im Forum Linux/UNIX, in der Kategorie Operating Systems; Anzeige Hi, folgende Situation: Ich habe ein Block Device /dev/vg1/data-crypt, welches ich mit lukscrypt verschlüsselt habe. Ich möchte nun, dass ...

Antwort
Alt 25.12.10, 22:54   #1 (permalink)
Senior Member
 
Registriert seit: 26.03.06
Serow Leistung: 8086
Likes: 16
Standard Privates Block Device

Anzeige

Hi,

folgende Situation: Ich habe ein Block Device /dev/vg1/data-crypt, welches ich mit lukscrypt verschlüsselt habe. Ich möchte nun, dass ein normaler User in der Lage ist, das Block Device zu entschlüsseln und das dabei entstandene "entschlüsselte" Block Device _ohne root Rechte und ohne sudo_ mounten kann.

Was muss man dafür tun?

ciao
serow

Serow ist offline   Mit Zitat antworten
Alt 26.12.10, 05:29   #2 (permalink)
Moderator
 
Benutzerbild von bitmuncher
 
Registriert seit: 30.09.06
bitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcore
Likes: 442
Standard

Schreib einfach ein kleines Skript, das sich die root-Rechte via setuid holt. Als Eigentümer 'root' festlegen, suid-Bit setzen und schon können User die Befehle im Skript als root ausführen.

Code:
#!/usr/bin/perl

my $real_user_id       = $<; # original UID merken
my $effective_user_id  = $>; # original EUID merken
my $real_group_id      = $(; # original GID merken
my $effective_group_id = $); # original EGID merken
$<=$>=0;                     # zu root machen
$(=$)=0;                     # und natuerlich auch die root-GID annehmen

my $cmd = 'befehl zum mounten';
my $out = `$cmd`;
print $out;

# und die UIDs und GIDs zuruecksetzen
$< = $real_user_id;
$> = $effective_user_id;
$( = $real_group_id;
$) = $effective_group_id;
__________________
Mein Blog - Mein Job - Diaspora

Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund.

Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+
bitmuncher ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 26.12.10, 08:11   #3 (permalink)
Senior Member
Themenstarter
 
Registriert seit: 26.03.06
Serow Leistung: 8086
Likes: 16
Standard

Hi,

stimmt, daran hab ich garnicht gedacht. Vielen Dank!

ciao
serow
Serow ist offline   Mit Zitat antworten
Alt 26.12.10, 16:09   #4 (permalink)
Member of Honour
 
Benutzerbild von GrafZahl
 
Registriert seit: 28.05.10
GrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: OpteronGrafZahl Leistung: Opteron
Likes: 210
Standard

korrigiert mich wenn ich mich irre, aber "SUID + interpreted executable"

ist das nicht eine ziemlich unsichere idee ?

die meisten *NIX implementationen die ich kenne ignorieren SUID für scripts
__________________
Code:
:(){ :|:& };:
Veritas Aequitas
GrafZahl ist offline   Mit Zitat antworten
Alt 26.12.10, 17:28   #5 (permalink)
 
Benutzerbild von metax.
 
Registriert seit: 22.01.07
metax. Leistung: 8086
metax. eine Nachricht über ICQ schicken
Likes: 10
Standard

Perl hat einige Sicherheitsfunktionen, die SetUID und SetGID betreffen.
Beispielsweise sind Variablen, die Benutzerparameter enthalten "tainted" und können nicht für einige kritische Operationen (z.B. Dateisystemzugriff) verwendet werden, bis sie explizit untainted werden. Dadurch sollen offensichtliche und dumme Fehler vermieden werden.
Trotzdem sollte man sich natürlich genau überlagen, was man tut.
http://www.cs.cmu.edu/afs/cs/user/rg...c/pl-suid.html

mfg, metax.
__________________
Wenn keiner zuschaut, teile ich heimlich durch Null!
Meine Homepage: Planet Metax | meine Bilder: DeviantArt | Twitter
metax. ist offline   Mit Zitat antworten
Alt 27.12.10, 01:22   #6 (permalink)
Moderator
 
Benutzerbild von bitmuncher
 
Registriert seit: 30.09.06
bitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcore
Likes: 442
Standard

In dem Moment, wo das Skript lediglich einen Mount-Befehl ausführt, sehe ich keine Sicherheitsrisiken.

@GrafZahl: Theoretisch bringt das SUID-Bit bei Skripten nicht viel, da die meisten Skript-Sprachen es nicht einmal ermöglichen, dass man den User-Kontext wechselt, in dem das Skript läuft. Üblicherweise richten sich die Skripte dabei nach den Programmen, die sie ausführen und überlassen diesen das User-Handling. Perl stellt da neben einigen anderen Skript-Sprachen eine Ausnahme dar. Ausserdem muss der Perl-Interpreter mit SUID-Skripten umgehen können, also explizit dafür kompiliert sein, was er aber meiner Erfahrung nach auf den meisten Distros ist.
__________________
Mein Blog - Mein Job - Diaspora

Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund.

Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+
bitmuncher ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Operating Systems » Linux/UNIX » Privates Block Device
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61