public void Test_Facebook_groupchat() { var messagePatterns = new[] { new[] { "1430427525024", "100007717846239", "And now here is my secret, a very simple secret: It is only with the heart that one can see rightly; what is essential is invisible to the eye." }, new[] { "1430427555826", "100009331491476", "You're beautiful, but you're empty.... No one could die for you" }, new[] { "1430427603378", "765374730", "Only the children know what they are looking for." }, new[] { "1430427624091", "100009331491476", "For the travelers the stars are guides. For others they are nothing but tiny lights." }, new[] { "1430427644664", "765374730", "What makes the desert beautiful,\" said the little prince, \"is that somewhere it hides a well." }, new[] { "1430427659648", "100007717846239", "It is such a mysterious place, the land of tears." } }; this.FrameworkController.ProcessCapture(this.PrepareCaptureForProcessing(SnoopersPcaps.Default.facebook_fb_group_pcapng)); var conversations = this.L7Conversations.ToArray(); var pk = File.ReadAllText(PrivateKeys.Default.fb_pk); foreach (var conversation in conversations) { conversation.Key = new CypherKey { ServerPrivateKey = pk }; } this.FrameworkController.ExportData(this.AvailableSnoopers, conversations, this.CurrentTestBaseDirectory, true); this.FrameworkController.ExportData(this.AvailableSnoopers, this.SnooperExports, this.CurrentTestBaseDirectory); //Assert.AreEqual(this.SnooperExports.Count, 2); FacebookSnooperExport exportedObjects = null; foreach (var objs in this.SnooperExports.ToArray()) //Get FacebookSnooper exported objects { if ((exportedObjects = objs as FacebookSnooperExport) != null) { break; } } Assert.IsNotNull(exportedObjects); var exportedObjectBases = exportedObjects.ExportObjects.ToArray(); Assert.AreEqual(18, exportedObjectBases.Length); var messages = exportedObjectBases.Where(i => i is FacebookGroupMessage).Cast <FacebookGroupMessage>().OrderBy(it => it.FbTimeStamp).ToArray(); Assert.AreEqual(messages.Length, 6); Assert.AreEqual(messages.Length, messagePatterns.Length); for (var i = 0; i < messages.Length; i++) { Assert.AreEqual(messages[i].FbTimeStamp.ToString(), messagePatterns[i][0]); Assert.AreEqual(messages[i].SenderId.ToString(), messagePatterns[i][1]); Assert.AreEqual(messages[i].Text, messagePatterns[i][2]); } }
public void Facebook_Message_View_Test() { var test = new FacebookSnooperExport(); var messages = new List <FacebookMessage> { new FacebookMessage(test) { FbTimeStamp = 1000, TargetId = 10515, SenderId = 88, Text = "ahoj" }, new FacebookMessage(test) { FbTimeStamp = 1000, TargetId = 10515, SenderId = 88, Text = "ahoj2" }, new FacebookMessage(test) { FbTimeStamp = 1000, TargetId = 10515, SenderId = 88, Text = "ahoj3" } }; // FbMessagesView window; // The dispatcher thread //var t = new Thread(() => //{ // window = new FbMessagesView(); // window.SetData(messages); // window.FacebookMessagesView.DataContext = messages; // Initiates the dispatcher thread shutdown when the window closes // window.Closed += (s, e) => window.Dispatcher.InvokeShutdown(); // window.Show(); // Makes the thread support message pumping // System.Windows.Threading.Dispatcher.Run(); //}); // Configure the thread // t.SetApartmentState(ApartmentState.STA); // t.Start(); // t.Join(); }
public void Test_Facebook_status() { this.FrameworkController.ProcessCapture(this.PrepareCaptureForProcessing(SnoopersPcaps.Default.facebook_fb_status_pcapng)); var conversations = this.L7Conversations.ToArray(); var pk = File.ReadAllText(PrivateKeys.Default.fb_pk); foreach (var conversation in conversations) { conversation.Key = new CypherKey { ServerPrivateKey = pk }; } this.FrameworkController.ExportData(new List <ISnooper> { new SnooperHTTP.SnooperHTTP() }, conversations, this.CurrentTestBaseDirectory, true); this.FrameworkController.ExportData(new List <ISnooper> { new SnooperFacebook() }, this.SnooperExports, this.CurrentTestBaseDirectory); //Assert.AreEqual(2, this.SnooperExports.Count); FacebookSnooperExport exportedObjects = null; //this.SnooperExports.Reset(); foreach (var objs in this.SnooperExports.ToArray()) //Get FacebookSnooper exported objects { if ((exportedObjects = objs as FacebookSnooperExport) != null) { break; } } Assert.IsNotNull(exportedObjects); var exportedObjectBases = exportedObjects.ExportObjects.ToArray(); var status = (from item in exportedObjectBases where item.GetType() == typeof(FacebookStatus) select item as FacebookStatus).ToList(); Assert.AreEqual(1, status.Count); Assert.AreEqual(status[0].FacebookStatusTimestamp, "265817278101112658011511995106"); Assert.AreEqual(status[0].SenderId, "100007717846239"); Assert.AreEqual(status[0].TargetId, "100007717846239"); Assert.AreEqual(status[0].StatusText, "Test status"); }
public void Test_Facebook_file() { this.FrameworkController.ProcessCapture(this.PrepareCaptureForProcessing(SnoopersPcaps.Default.facebook_fb_file_pcapng)); var conversations = this.L7Conversations.ToArray(); var pk = File.ReadAllText(PrivateKeys.Default.fb_pk); foreach (var conversation in conversations) { conversation.Key = new CypherKey { ServerPrivateKey = pk }; } this.FrameworkController.ExportData(this.AvailableSnoopers, conversations, this.CurrentTestBaseDirectory, true); this.FrameworkController.ExportData(this.AvailableSnoopers, this.SnooperExports, this.CurrentTestBaseDirectory); //Assert.AreEqual(this.SnooperExports.Count, 2); FacebookSnooperExport exportedObjects = null; foreach (var objs in this.SnooperExports.ToArray()) //Get FacebookSnooper exported objects { if ((exportedObjects = objs as FacebookSnooperExport) != null) { break; } } Assert.IsNotNull(exportedObjects); var exportedObjectBases = exportedObjects.ExportObjects.ToArray(); Assert.AreEqual(1, exportedObjectBases.Length); var files = exportedObjectBases.Where(i => i is FacebookMessengerFile).Cast <FacebookMessengerFile>().OrderBy(it => it as FacebookMessengerFile).ToArray(); Assert.AreEqual(files.Length, 1); Assert.AreEqual(files[0].FbTimeStamp, 1429992295707); Assert.AreEqual(files[0].Name, "test.txt"); Assert.AreEqual(files[0].SenderId, 100007717846239); Assert.AreEqual(files[0].TargetId, 765374730); Assert.AreEqual(files[0].Url, "https://cdn.fbsbx.com/hphotos-xaf1/v/t59.2708-21/11172381_1564175987182981_2104073377_n.txt/test.txt?oh=f40481ec246f9f62db70b236e9a2fba1&oe=553E5CFE&dl=1" ); }
public void ConcreteTypeGetFilteredTest() { var dbx = this.WindsorContainer.Resolve <NetfoxDbContext>(); var exportSMTP = new SnooperExportSMTP(this.CurrentTestBaseDirectory); var exportFacebook = new FacebookSnooperExport(); dbx.SnooperExports.Add(exportSMTP); dbx.SnooperExports.Add(exportFacebook); dbx.SaveChanges(); var exportObjects = this.WindsorContainer.Resolve <VirtualizingObservableDBSetPagedCollection <SnooperExportBase> >(); var exportObjectsEmail = this.WindsorContainer.Resolve <VirtualizingObservableDBSetPagedCollection <SnooperExportEmailBase> >(); Assert.AreEqual(2, exportObjects.Count); Assert.AreEqual(1, exportObjectsEmail.Count); }
public void Test_Facebook_groupfile() { this.FrameworkController.ProcessCapture(this.PrepareCaptureForProcessing(SnoopersPcaps.Default.facebook_fb_groupfile_pcapng)); var conversations = this.L7Conversations.ToArray(); var pk = File.ReadAllText(PrivateKeys.Default.fb_pk); foreach (var conversation in conversations) { conversation.Key = new CypherKey { ServerPrivateKey = pk }; } this.FrameworkController.ExportData(this.AvailableSnoopers, conversations, this.CurrentTestBaseDirectory, true); this.FrameworkController.ExportData(this.AvailableSnoopers, this.SnooperExports, this.CurrentTestBaseDirectory); //Assert.AreEqual(this.SnooperExports.Count, 2); FacebookSnooperExport exportedObjects = null; foreach (var objs in this.SnooperExports.ToArray()) //Get FacebookSnooper exported objects { if ((exportedObjects = objs as FacebookSnooperExport) != null) { break; } } Assert.IsNotNull(exportedObjects); var exportedObjectBases = exportedObjects.ExportObjects.ToArray(); Assert.AreEqual(1, exportedObjectBases.Length); var files = exportedObjectBases.Where(i => i is FacebookMessengerGroupFile).Cast <FacebookMessengerGroupFile>().OrderBy(it => it as FacebookMessengerGroupFile).ToArray(); Assert.AreEqual(files.Length, 1); Assert.AreEqual(files[0].FbTimeStamp, 1430427730964); Assert.AreEqual(files[0].GroupName, "NetfoxSnooper"); Assert.AreEqual(files[0].Name, "test.txt"); Assert.AreEqual(files[0].Url, "https://cdn.fbsbx.com/hphotos-xft1/v/t59.2708-21/11119012_1566060883661158_1678031127_n.txt/test.txt?oh=b001ba81778c13192e56ab4237282f73&oe=5544E8C4&dl=1" ); }
public void Test_Facebook_groupphoto() { this.FrameworkController.ProcessCapture(this.PrepareCaptureForProcessing(SnoopersPcaps.Default.facebook_fb_groupphoto_pcapng)); var conversations = this.L7Conversations.ToArray(); var pk = File.ReadAllText(PrivateKeys.Default.fb_pk); foreach (var conversation in conversations) { conversation.Key = new CypherKey { ServerPrivateKey = pk }; } this.FrameworkController.ExportData(this.AvailableSnoopers, conversations, this.CurrentTestBaseDirectory, true); this.FrameworkController.ExportData(this.AvailableSnoopers, this.SnooperExports, this.CurrentTestBaseDirectory); //Assert.AreEqual(this.SnooperExports.Count, 2); FacebookSnooperExport exportedObjects = null; foreach (var objs in this.SnooperExports.ToArray()) //Get FacebookSnooper exported objects { if ((exportedObjects = objs as FacebookSnooperExport) != null) { break; } } Assert.IsNotNull(exportedObjects); var exportedObjectBases = exportedObjects.ExportObjects.ToArray(); Assert.AreEqual(2, exportedObjectBases.Length); var photos = exportedObjectBases.Where(i => i is FacebookMessengerGroupPhoto).Cast <FacebookMessengerGroupPhoto>().OrderBy(it => it as FacebookMessengerGroupPhoto).ToArray(); Assert.AreEqual(photos.Length, 1); Assert.AreEqual(photos[0].FbTimeStamp, 1430516559580); Assert.AreEqual(photos[0].GroupName, "NetfoxSnooper"); Assert.AreEqual(photos[0].Name, "image-1566376120296301"); Assert.AreEqual(photos[0].Url, "https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-xpt1/v/t34.0-12/p206x206/11049523_1566376040296309_2824715817304330990_n.jpg?oh=8f161c5e82242e9fc7ac4332de8bff3d&oe=55464B29&__gda__=1430677806_97fbf8d0ae71d0ee4c65ba3aae04e207" ); }
public void Test_Facebook_photo() { this.FrameworkController.ProcessCapture(this.PrepareCaptureForProcessing(SnoopersPcaps.Default.facebook_fb_photo_pcapng)); var conversations = this.L7Conversations.ToArray(); var pk = File.ReadAllText(PrivateKeys.Default.fb_pk); foreach (var conversation in conversations) { conversation.Key = new CypherKey { ServerPrivateKey = pk }; } this.FrameworkController.ExportData(this.AvailableSnoopers, conversations, this.CurrentTestBaseDirectory, true); this.FrameworkController.ExportData(this.AvailableSnoopers, this.SnooperExports, this.CurrentTestBaseDirectory); //Assert.AreEqual(this.SnooperExports.Count, 2); FacebookSnooperExport exportedObjects = null; foreach (var objs in this.SnooperExports.ToArray()) //Get FacebookSnooper exported objects { if ((exportedObjects = objs as FacebookSnooperExport) != null) { break; } } Assert.IsNotNull(exportedObjects); var exportedObjectBases = exportedObjects.ExportObjects.ToArray(); Assert.AreEqual(1, exportedObjectBases.Length); var photos = exportedObjectBases.Where(i => i is FacebookMessengerPhoto).Cast <FacebookMessengerPhoto>().OrderBy(it => it as FacebookMessengerPhoto).ToArray(); Assert.AreEqual(photos.Length, 1); Assert.AreEqual(photos[0].Name, "image-1564026470531266"); Assert.AreEqual(photos[0].SenderId, 100007717846239); Assert.AreEqual(photos[0].TargetId, 765374730); Assert.AreEqual(photos[0].Url, "https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-xpt1/v/t34.0-12/p206x206/11139509_1564026470531266_1032067402_n.jpg?oh=46e9ba071c790b96ca8d4e19b9361f8d&oe=553DC440&__gda__=1430098539_123b1ab04b0700255e483079fd38041a" ); }
public void AddProperyPersistenceObjectTest() { var dbx = this.WindsorContainer.Resolve <NetfoxDbContext>(); var exports = this.WindsorContainer.Resolve <VirtualizingObservableDBSetPagedCollection <SnooperExportBase> >(); var exportFacebook = new FacebookSnooperExport(); var exportObject = new FacebookEventTyping(exportFacebook); exportObject.ExportSources.Add(new EmailExportResult()); exportFacebook.OnBeforeProtocolParsing(); exportFacebook.OnAfterProtocolParsing(); exportFacebook.OnBeforeDataExporting(); exportFacebook.AddExportObject(exportObject); exportFacebook.OnAfterDataExporting(); dbx.SnooperExports.Add(exportFacebook); dbx.SaveChanges(); Assert.AreEqual(1, exports.Count); Assert.AreEqual(1, dbx.SnooperExports.Count()); Assert.AreEqual(1, dbx.SnooperExportedObjects.Count()); }
public void Test_Facebook_comment() { this.FrameworkController.ProcessCapture(this.PrepareCaptureForProcessing(SnoopersPcaps.Default.facebook_fb_comment_pcapng)); var conversations = this.L7Conversations.ToArray(); var pk = File.ReadAllText(PrivateKeys.Default.fb_pk); foreach (var conversation in conversations) { conversation.Key = new CypherKey { ServerPrivateKey = pk }; } this.FrameworkController.ExportData(this.AvailableSnoopers, conversations, this.CurrentTestBaseDirectory, true); this.FrameworkController.ExportData(this.AvailableSnoopers, this.SnooperExports, this.CurrentTestBaseDirectory); //Assert.AreEqual(this.SnooperExports.Count, 2); FacebookSnooperExport exportedObjects = null; foreach (var objs in this.SnooperExports.ToArray()) //Get FacebookSnooper exported objects { if ((exportedObjects = objs as FacebookSnooperExport) != null) { break; } } Assert.IsNotNull(exportedObjects); var exportedObjectBases = exportedObjects.ExportObjects.ToArray(); Assert.AreEqual(1, exportedObjectBases.Length); var comments = exportedObjectBases.Where(i => i is FacebookComment).Cast <FacebookComment>().OrderBy(it => it as FacebookComment).ToArray(); Assert.AreEqual(comments[0].Text, "Komentar"); Assert.AreEqual(comments[0].FbTimeStamp, 1429947212); Assert.AreEqual(comments[0].SenderId, 100007717846239); }
public void Test_Facebook_chat() { var messagePatterns = new[] { new[] { "1430335728592", "765374730", "100007717846239", "Lorem ipsum dolor sit amet" }, new[] { "1430335746325", "100007717846239", "765374730", "mea quis doming nemore ad" }, new[] { "1430335774017", "100007717846239", "765374730", "vis cu dolorem minimum omittam" }, new[] { "1430335786963", "765374730", "100007717846239", "brute graece platonem usu ea" }, new[] { "1430335804566", "100007717846239", "765374730", "ius vero consulatu complectitur ad" }, new[] { "1430335815391", "765374730", "100007717846239", "id usu detracto iracundia euripidis" } }; this.FrameworkController.ProcessCapture(this.PrepareCaptureForProcessing(SnoopersPcaps.Default.facebook_fb_chat_pcapng)); var conversations = this.L7Conversations.ToArray(); var pk = File.ReadAllText(PrivateKeys.Default.fb_pk); foreach (var conversation in conversations) { conversation.Key = new CypherKey { ServerPrivateKey = pk }; } this.FrameworkController.ExportData(new List <ISnooper> { new SnooperHTTP.SnooperHTTP() }, conversations, this.CurrentTestBaseDirectory, true); this.FrameworkController.ExportData(new List <ISnooper> { new SnooperFacebook() }, this.SnooperExports, this.CurrentTestBaseDirectory); //Assert.AreEqual(this.SnooperExports.Count, 2); FacebookSnooperExport exportedObjects = null; foreach (var objs in this.SnooperExports.ToArray()) //Get FacebookSnooper exported objects { if ((exportedObjects = objs as FacebookSnooperExport) != null) { break; } } Assert.IsNotNull(exportedObjects); var exportedObjectBases = exportedObjects.ExportObjects.ToArray(); Assert.AreEqual(17, exportedObjectBases.Length); var messages = exportedObjectBases.Where(i => i is FacebookMessage).Cast <FacebookMessage>().OrderBy(it => it.FbTimeStamp).ToArray(); Assert.AreEqual(6, messages.Length); Assert.AreEqual(messages.Length, messagePatterns.Length); for (var i = 0; i < messages.Length; i++) { Assert.AreEqual(messages[i].FbTimeStamp.ToString(), messagePatterns[i][0]); Assert.AreEqual(messages[i].SenderId.ToString(), messagePatterns[i][1]); Assert.AreEqual(messages[i].TargetId.ToString(), messagePatterns[i][2]); Assert.AreEqual(messages[i].Text, messagePatterns[i][3]); } }