Вероятно вы знаете о недавней уязвимости в ActiveX компоненте MSVidCtl. Эта уязвимость позволяла выполнить свой код, используя уязвимость буфера. Не так давно в одном из блогов, посвящённом SDL можно было увидеть описание ошибки программиста, которая могла привести к переполнению буфера и ей могли воспользоваться хакеры.
Ошибка заключается в одном символе, вместо правильного кода:
hr = pStream->Read((void*)pbArray, (ULONG)cbSize, NULL);
программист написал:
hr = pStream->Read((void*)&pbArray, (ULONG)cbSize, NULL);
Ввод лишнего амперсанда ( &, получение адреса) привёл к тому, что другой человек при желании мог бы воспользоваться этим багом и произвести переполнение буфера со всеми возможными последствиями.