Tuesday, November 10, 2009

Command-Line Tool Fuzzer

Yesterday Marcus reminded me that I have written a Fuzzer for command-line tools... honestly I forgot this little PoC tool and it slept in my CVS repository for nearly 1.5 years. Until now, I put it online. Beta-testers are welcome.

kostenloser Counter


Thursday, November 5, 2009

Impfen gegen Schweinegrippe ist gefährlich.

Um den thematischen Bogen zu meinem Blog zu spannen, es geht um "Security Awareness" und "Risk Assessment"... und natürlich nur um meine eigene Meinung. :)


Wo fange ich an, am Besten in der Vergangenheit.
Bevor die Impfphase los ging, wurde von "den Ärzten" (dem Robert-Koch Institut, rki) eine bessere Hygiene propagiert: "Wer satt und sauber ist, hat nichts zu befürchten." (sinngemäß)

Hier wird also eine Kausalkette (satt+sauber --> keine Schweinegrippe) suggeriert, die dazu führt, dass sich die Leute häufiger als sonst - was gut ist - die Hände waschen, denn nur dann brauchen sie keine Angst vor einer Influenzainfektion zu haben. Angst! Tod! Sauberkeit! Da legen sich Schalter in unserem Kopf um...

Dieser Effekt wird natürlich durch Berichterstattung verstärkt: Nichts, bis zu 3000 Neuinfektionen in Dt.ld., am selben Tag dann schon 7000 allein in NRW, immer mehr Opfer der Grippe, nun werden die kranken Promis ins Rampenlicht der öffentlichen Meinungsbühne gezerrt, Menschen ohne Vorerkrankung (was auch nicht stimmt, siehe rki) sterben, immer mehr Leute lassen sich Impfen.


Nun der zweite Schritt, die Gegenwart.
Personen, die viel Kontakt mit kranken/schwachen Menschen haben werden sich Impfen lassen (Vorschrift, Gruppenzwang, Unsicherheit). Sie impfen sich aus zwei Gründen: zum Einen können sie selbst nicht mehr erkranken und zum Anderen sind sie nun keine Überträger mehr. Aber gerade das ist falsch! Hier liegt der gedankliche Fehler, der das Problem u.U. verschlimmert.

Und damit kommen wir zum dritten Schritt, was in Zukunft kommen könnte.
Mit der Impfung ist die Kausalkette zerstört. Die Gefahr existiert nicht mehr, also wird die eigene Hygiene wieder vernachlässigt. Und es ist doch evident, dass man immer noch Überträger der Krankheit ist, denn auch wenn man die Viren nicht mehr tröpfchenweise beim Niesen und Husten verteilt, verteilt man sie passiv durch Körperkontakt, wenn sie sich auf der Haut/Handschuh/Kleidung/Material befinden.

Ein Beispiel: Dr. Dampfmann geht zu Patient Müller, der H1N1 fröhlich in seiner Umwelt verteilt. Dr. Dampfmann bekommt eine Ladung infektiösen Schleimes beim Händeschütteln gratis zur Begrüßung auf Art der alten Schule dazu. Aufgrund mangelnder "Security Awareness" (Achtung Bogen!) dank Impfung, wird die Hand nicht zwischen den Patientenvisiten gewaschen und zur nächsten Hand von Patient Meyer, der sich beim Monolog von Dr. Dampfmann nachdenklich an Kinn und Mundwinkel kratzt, weitergegeben.
Es müssen natürlich nicht immer Ärzte sein, Sportkollegen, Kassierer/-innen, Postboten, Aufzugknopf, Türgriffe, Bedienungen, usw.

:)

kostenloser Counter


Thursday, October 15, 2009

Twitter does not want me

Today I tried to get a twitter account for the second time. But man, I am not able to read this captcha words, they are too heavily scrambled.. may I need glasses? 8-|

And if I click "create account" it shows me my URL but it is already used, why doesn't the web-app tell me to try another username... but I am not sad about it, twitter increase the risk to say something stupid because it is fast and easy to use. ;-)

kostenloser Counter


Tuesday, October 6, 2009

Local root via VBoxNetAdpCtl

Our maintainer requested to set the sbit for VBoxNetAdpCtl but a quick code review revealed that the code is vulnerable to shell command injection via popen(3) and a possible buffer overflow. Both bugs were fixed upstream by Sun.

Unfortunately there were no CVE-IDs assigned to this issues yet.

And to avoid confusions: We do not ship this tool setuid. :-)

Update:

CVE-2009-3692 for popen()
CVE-2009-3704 for strncpy().

kostenloser Counter


Monday, August 24, 2009

SELinux on openSUSE 11.2 Milestone 6


SELinux can be enabled via YaST's bootloader module easily now.


kostenloser Counter


Tuesday, August 4, 2009

Perl Information Leak

I had to hack a small perl script last weak and encountered a situation were the content of a my variable from function a() was somehow accessible from function b()... which seems to be a bug in the perl interpreter, but today it turned out it wasn't a bug in the interpreter but in my code. Here is the heavily reduced code:

#!/usr/bin/perl -tw
use strict;
use Data::Dumper;

sub a()
{
my $archive_type = "unknown";
my $mime_type = "unknown";

$mime_type = "application/x-tar";
print $mime_type, "\n";

$_ = $mime_type;
$archive_type = "plain" if(/application\/x-tar/);
$archive_type = "gzip" if(/application\/x-compressed-tar/);
$archive_type = "bzip" if(/application\/x-bzip-compressed-tar/);

print $archive_type, "\n";

my %code_dir = ();
$code_dir{'dir1'} = "dir1";
$code_dir{'dir2'} = "dir2";

return %code_dir;
}

sub b(%)
{
my %code_dir = $_;

print Dumper(%code_dir);
}

#
# MAIN
#
my %code_dir = a();
b(%code_dir);
0;

This produces:

> ./lala.pl
application/x-tar
plain
Odd number of elements in hash assignment at ./osssi.pl line 32.
$VAR1 = 'application/x-tar';
$VAR2 = undef;



The content of %code_dir in function b() is from function a().

Did you see what happened?



kostenloser Counter


Friday, July 24, 2009

openSUSE 11.2 M4 and SELinux

This week was HackWeek, unfortunately I didn't had the time for hacking something because SELinux does not work in Milestone 4.

It looks like the new kernel in Milestone 4 for 11.2 needs some special switches to be pushed to enable SELinux.

The kernel config defines "apparmor" as the default security framework which denys loading the "selinuxfs" etc.

Therefore you need to add the following parameters to the kernel boot parameter: "security=selinux selinux=1 enforcing=0"

I started working on a yast module for SELinux but I doubt I will finish it... if somebody wants to take over, let me know! :-)

Additionally a new libselinux package was submitted that includes an updated selinux-ready script. Pavol also submitted a new policycoreutils package to fix a build failure.



kostenloser Counter