Вчора наш драйверщик шукаючи одну багу в коді драйвера знайшов іншу, непримітну, залишену колишнім розробником цього драйвера. Знайдіть її і ви. Це гарна вправа на знання деяких хитрих програмістських методик. Сирці я трохи підравив, повикидавши згадки назви драйверу та більшу частину несуттєвого до баги коду і додавши своє визначення SecurityCookie (це, до речі, теж підказка 😉 ). ULONG SecurityCookie = 0xDEADBEEF; [ ... skipped ... ] pUserNotificationMap->MappedSize = FloatingUnitSize + sizeof(NOTIFICATION_MAP) + sizeof(SecurityCookie); pUserNotificationMap->MappedUnits = 1; RtlCopyBytes( &pUserNotificationMap->…