The program provides the functionality of forwarding a particular port's TCP traffic from one computer to another with 2 separate Winsock objects. The program also provides functionality to monitor and record all data passed through, and automatically reconfigure itself for another connection attempt when one has closed. All data is logged with the source IP.
A denial of service occurs when a very long text string is sent to the service data application. By sending a specially crafted request to the program it is possible to cause the program to crash.
Proof of Concept:
'Source code Form1.frm
Private Sub rsource_DataArrival(ByVal bytesTotal As Long)
rsource.GetData outdatabuffer
rdest.SendData outdatabuffer ' vulnerable string
text4.Text = text4.Text & outdatabuffer
outdatabuffer = ""
End Sub
When connect try to send GET request ,the source debug code will show display: 'Run-time error '40006';
Wrong protocol or connection state for the requested transaction or request
The out data-buffer is doesn't have a response to handle from incoming request. This cause the program to stop responding/shutting-down.
Exploit:
/*
DataTrac Activity Console DoS Exploit
----------------------------------------
INFGP - Hacking&security Research
Resolve host... [OK]
[+] Connecting... [OK]
Target locked
Sending bad procedure... [OK]
[+] Server DoS'ed