Exemplo n.º 1
0
 internal static void UploadFiles()
 {
     while (true)
     {
         try
         {
             foreach (string fileName in Directory.GetFiles(Program.Endpoint.StorageDirectory, "*.gz"))
             {
                 DataForwarder.SendFile(fileName);
                 File.Delete(fileName);
             }
             Thread.Sleep(1000);
         }
         catch (Exception ex)
         {
             EvLog.WriteLog("Upload Failed\n" + ex.Message, 1000);
         }
     }
 }
        public WorkstationRegistration()
        {
            try
            {
                string      SUB_KEY_NAME = @"SOFTWARE\ThreatInformatics";
                RegistryKey key          = Registry.LocalMachine.OpenSubKey(SUB_KEY_NAME);
                if (key == null)
                {
                    key = Registry.LocalMachine.CreateSubKey(SUB_KEY_NAME);
                }


                object tempValue = key.GetValue("HardwareId");
                if (tempValue == null)
                {
                    m_WorkstationId = Guid.NewGuid();
                    key.SetValue("HardwareId", m_WorkstationId.ToString(), RegistryValueKind.String);
                }
                else
                {
                    m_WorkstationId = Guid.Parse(tempValue.ToString());
                }

                m_StorageDirectory = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData), "SysmonForwarder");
                EvLog.WriteLog(String.Format("Set Storage Directory to {0}", m_StorageDirectory), 1000);
                if (!Directory.Exists(m_StorageDirectory))
                {
                    Directory.CreateDirectory(m_StorageDirectory);
                }


                m_ServerUrl = DataForwarder.GetUploadServer(Guid.NewGuid().ToString());

                EvLog.WriteLog(String.Format("Received serverurl : {0}", m_ServerUrl), 1005);
            }
            catch (Exception error)
            {
                System.Diagnostics.EventLog appLog = new System.Diagnostics.EventLog();
                appLog.Source = "freeqHunter";
                appLog.WriteEntry(error.Message, System.Diagnostics.EventLogEntryType.Error, 1000);
            }
        }