Exemplo n.º 1
0
 private void OnPacketReceived(IPHeader ipHeader)
 {
     if (IpPacketReceived != null)
     {
         IpPacketReceived(ipHeader, EventArgs.Empty);
     }
 }
Exemplo n.º 2
0
 private void OnPacketSent(IPHeader ipHeader)
 {
     if (IpPacketSent != null)
     {
         IpPacketSent(ipHeader, EventArgs.Empty);
     }
 }
Exemplo n.º 3
0
        void s_IpPacketSent(object sender, EventArgs e)
        {
            IPHeader ipHeader = (IPHeader)sender;

            if (ipHeader.ProtocolType == Protocol.Tcp)
            {
                try {
                    TCPHeader tcp = new TCPHeader(ipHeader.Data, ipHeader.MessageLength);
                    int       sourcePort;
                    if (int.TryParse(tcp.SourcePort, out sourcePort))
                    {
                        if (sourcePort == ((FtpConfig)Configuration.AgentSettings).FtpPort)
                        {
                            if (Tracing)
                            {
                                OnTrace((IPHeader)sender);
                            }
                            if (tcp.Data.Length > 0)
                            {
                                AppLayerFtp ftp = new AppLayerFtp(tcp.Data, tcp.Data.Length);
                                if (ftp.FtpReplyCode == AppLayerFtp.FTP_REPLY_CODE_LOGIN_DENIED)
                                {
                                    UnsuccessfulLogin(ipHeader.DestinationAddress.ToString());
                                }
                            }

                            // Console.WriteLine("Flags: {0}\tAck: {1}\tSeq:{2}", tcp.Flags, tcp.AcknowledgementNumber, tcp.SequenceNumber);
                            // Console.WriteLine("Source: {0}:{1}\tDestination: {2}:{3}", ipHeader.SourceAddress, tcp.SourcePort, ipHeader.DestinationAddress, tcp.DestinationPort);
                        }
                    }
                } catch (Exception ex) {
                    Sniffer.LogTrace(ex);
                }
            }
        }
Exemplo n.º 4
0
 private void OnTrace(IPHeader tlsPackage)
 {
     if (Trace != null)
     {
         Trace(tlsPackage, EventArgs.Empty);
     }
 }
Exemplo n.º 5
0
 private void OnReceive(IAsyncResult ar)
 {
     if (!aborted)
     {
         try {
             int length = ipSocket.EndReceive(ar);
             //ParseData(byteData, nReceived);
             IPHeader ipHeader = new IPHeader(byteData, length);
             if (ipHeader.SourceAddress.Equals(IPAddress))
             {
                 OnPacketSent(ipHeader);
             }
             // if (ipHeader.DestinationAddress.Equals(IPAddress)) OnPacketReceived(ipHeader);
             // OnPacketReceived(new NetworkPacket(byteData,length));
         } catch (Exception ex) {
             // Sniffer.LogTrace(ex);
         } finally {
             byteData = new byte[128];          // set to 16276 bytes
             // continue receiving
             ipSocket.BeginReceive(byteData, 0, byteData.Length, SocketFlags.None,
                                   new AsyncCallback(OnReceive), null);
         }
     }
 }