On Thu, Dec 08, 2005 at 12:41:02PM -0800, Charles Stevenson wrote:
>[EMAIL PROTECTED]:~$ perl -e 'printf("%2918905856\$vs")'
>Segmentation fault
>
>I haven't had time yet but I imagine it might be possible to gain root
>through perl-suid.This is not a buffer overflow. You're causing a SEGV by attempting to address a non-existant argument to printf. You don't need a large number to do this--the same happens with: perl -e 'printf q/%1$vs/' Addressing memory (or the failure to do so) is not a security risk in the same way that a buffer overflow is: the program simply aborts as opposed to continuing to run, potentially executing exploit code. It may be worth considering bounds-checking the index to svargs, if only to produce a more meaningful error than "Segmentation fault". --bod -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

