public void TelnetPasswordParser_ParseTelnetCharModePassword_ParseSuccess() { // Arrange var telnetParser = new PcapAnalyzer.TelnetPasswordParser(); var session = new PcapAnalyzer.TcpSession(); var expected = new PcapAnalyzer.NetworkPassword() { Username = "******", Password = "******", Destination = "2.2.2.2", Source = "1.1.1.1", Protocol = "Telnet" }; // Mock a session where the user is "us" and the password is "Secret123". session.Data = Encoding.ASCII.GetBytes("login:uuss" + Environment.NewLine + "Password:Secret123"); session.Packets.Add(mockPacket("2.2.2.2", "1.1.1.1", 21, 5472, "login:"******"1.1.1.1", "2.2.2.2", 5472, 21, "u")); session.Packets.Add(mockPacket("2.2.2.2", "1.1.1.1", 21, 5472, "u")); session.Packets.Add(mockPacket("1.1.1.1", "2.2.2.2", 5472, 21, "s")); session.Packets.Add(mockPacket("2.2.2.2", "1.1.1.1", 21, 5472, "s")); session.Packets.Add(mockPacket("2.2.2.2", "1.1.1.1", 21, 5472, "Password:"******"1.1.1.1", "2.2.2.2", 5472, 21, "Secret123")); session.Packets.Add(mockPacket("2.2.2.2", "1.1.1.1", 21, 5472, "some dummy data")); // Act. PcapAnalyzer.NetworkPassword password = (telnetParser.Parse(session) as PcapAnalyzer.NetworkPassword); // Assert. Assert.AreEqual(expected, password); }
public void HandlePassword(PcapAnalyzer.NetworkPassword password) { var edgeText = $"{password.Protocol} Password"; AddEdge(password.Username, password.Destination, edgeText); _graph.FindNode(password.Username).Attr.FillColor = Microsoft.Msagl.Drawing.Color.LightGreen; }
public void FtpPasswordParser_ParseFtpPassword_ParseSuccess() { // Arrange. var ftpParsrer = new PcapAnalyzer.FtpPasswordParser(); var session = new PcapAnalyzer.TcpSession(); session.SourceIp = "1.1.1.1"; session.DestinationIp = "2.2.2.2"; session.Data = Encoding.UTF8.GetBytes( @"220 Chris Sanders FTP Server USER csanders 331 Password required for csanders. PASS echo 230 User csanders logged in."); // Act. PcapAnalyzer.NetworkPassword passsword = (ftpParsrer.Parse(session) as PcapAnalyzer.NetworkPassword); // Assert. Assert.AreEqual("csanders", passsword.Username); Assert.AreEqual("echo", passsword.Password); }
public void HttpBasicPasswordParser_ParseFtpPassword_ParseSuccess() { // Arrange. var parsrer = new PcapAnalyzer.HttpBasicPasswordParser(); var packet = new PcapAnalyzer.TcpPacket(); packet.SourceIp = "1.1.1.1"; packet.DestinationIp = "2.2.2.2"; packet.Data = Encoding.UTF8.GetBytes( @"GET /password-ok.php HTTP/1.1 Host: browserspy.dk Connection: keep-alive Cache-Control: max-age=0 Authorization: Basic dGVzdDpmYWlsMw== Accept: text/html,application/xhtml+xml"); // Act. PcapAnalyzer.NetworkPassword password = (parsrer.Parse(packet) as PcapAnalyzer.NetworkPassword); // Assert. Assert.AreEqual("test", password.Username); Assert.AreEqual("fail3", password.Password); }