Eine Sicherheitslücke in Samba hat zur Folge, dass ein entfernter nicht-angemeldeter Angreifer Root-Rechte auf dem Samba-Server erlangen kann.
Ursache für die Schwachstelle ist ein Heap-Overflow-Fehler in der Datei “/smbd/process.c”. Das Problem tritt beim Verarbeiten von Any-Batched-Anfragen (AndX) auf.
Das Patch für den Fehler sieht folgendermaßen aus:
--- a/source/smbd/process.c
+++ b/source/smbd/process.c
@@ -1160,7 +1160,7 @@ int chain_reply(char *inbuf,char *outbuf,int size,int bufsize) static char *orig_inbuf; static char *orig_outbuf; int smb_com1, smb_com2 = CVAL(inbuf,smb_vwv0);
- unsigned smb_off2 = SVAL(inbuf,smb_vwv1);
+ static unsigned smb_off2; char *inbuf2, *outbuf2; int outsize2; int new_size;
@@ -1178,8 +1178,16 @@ int chain_reply(char *inbuf,char *outbuf,int size,int bufsize) /* this is the first part of the chain */ orig_inbuf = inbuf; orig_outbuf = outbuf;
+ smb_off2 = 0; }
+ if (SVAL(inbuf,smb_vwv1) <= smb_off2) {
+ DEBUG(1, ("AndX offset not increasing\n"));
+ SCVAL(outbuf, smb_vwv0, 0xFF);
+ return outsize;
+ }
+ smb_off2 = SVAL(inbuf, smb_vwv1);
Von dem Problem sind auch Benutzer des BlackBerry PlayBook Table betroffen.
Betroffen sind die Samba-Versionen vor 3.4.0.

