lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <E1A1Q8d-0004A3-00.alienhard-mail-ru@f9.mail.ru>
Date: Mon, 22 Sep 2003 16:49:59 +0400
From: "Ilya Teterin"  <alienhard@...l.ru>
To: bugtraq@...urityfocus.com
Subject: base64


Consider we decoding data which contains padding character ('=') at the unexpected place. What we should do with such data? The specification of base64 decoding does not tell us what we MUST or even MAY do with such data... So, we can do anything we like to do:

1. threat padding character as end of the encoded data
2. ignore padding character
3. decode padding character as well as some other character from base64 alphabet
4. do something else ;-)

I have tested some popular implementations (such as email clients, GNU utilities, RTL and other development's libraries). All items (1)-(4) are actually present.

Is it dangerous? Sure. Consider antiviral software, which implements behaviour (1), and e-mail client, which implements behaviour (2). Attacker can insert padding character in the beginning of the encoded data, and antiviral software will think encoded data is empty. But e-mail client will think differentother way ;-) So, bypassing of content-filtering and antiviral protection is obvious subject for this issue.

How to solve this issue? I believe we should rewrite at least filtering systems to block malformed base64-encoded data because we don't know is it malicious or not. Otherwise, we can meet new powerful e-mail worm.

-----
"Will research information security for food!"


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ