 Hallo, dit is Steven Sieer, senior-handler op de Internetstomcentrum. In zijn diërie en 3 of 25 maart, Xavier praat over XLSB files, dus die zijn binary spreadsheets, maar die zijn zoals de OOXML format, dus het is een zipcontainer met XML, maar veel van de XML files zijn eigenlijk geplaatst met binary files die XLSB format hebben en hij had een managelijke document zoals dat en hij gebruikt mijn tool ZipDump om de URL's te vinden en de stringen van een particular file in de zipcontainer te verwijderen. En een beetje later heb ik een specifieke tool XLSB Dump om die documenten te verwijderen. Nu, er is ook een meer generische approach naar dit en dat is gewoon kijken voor de strings, maar sinds we hier met een zipcontainer die ook XML files ontdekken, dan krijgen we veel strings uit die XML files en zijn we niet necessairey geïnteresseerd in ze, dus ik heb een metode uitgemaakt met mijn tool en een nieuw tool om je hoe dit kan worden gedaan en dit is in deze diërie en dat is wat ik ga laten zien hier in deze video. Dus als we een zipdump doen op dat XLS file, je ziet, het is een zipcontainer met wat XML files, maar dan veel bin files, zoals je kunt zien de worksheet sheet 1 hier is niet een XML file, maar het is een bin file, het is een binary file. En dus wat we willen doen is de strings uit die binary files uitgaan en niet de XML files. Ik ga je laten zien waarom. Nu, als je de strings command op dat sample hier speelt, je wil niets gebruiken omdat het compress is, dus hier krijg je bijvoorbeeld de filenname omdat de filenname in die zipcontainer in een van de record, maar voor de rest is er niets interessant, niets dat is aanschuldig. Dus je moet eigenlijk decompressen dit en je kunt decompressen alle files in een zipcontainer met zipdump gebruiken op option d uppercase d en dit zal gewoon decompressen alle files en senden ze uit standaard. Dus en daar kan ik strings gebruiken, maar ik gebruik mijn toerleer strings en ik ga voor lengte. Dat is wat ik vaak doe met mijn twee strings op prime en dat is waarom ik geïnplimenteerd is om deze optie te hebben. Dit zorgt voor de extracte strings voor de lengte en de lange strings zijn aan de einde, want vaak de meest interessantste strings in majesties documenten zijn long strings. Het is niet altijd de kans, maar oké en dat is wat we hier krijgen en hier hebben we veel XML omdat een XML file, ja, dat is eigenlijk één lange string en dat is wat we aan de einde hier hebben en het is alleen hier, half, voor al die XML dat we iets interessant hebben en dat lijkt op jouw helden. Nu laat ik je laten zien hoe je al die strings in deze XML files, wanneer je de strings commande runt. Nu, eerst van alles, we moeten een andere format, een JSON format switchen. We instructen ZipDump te exporten JSON en we instructen strings te importen, te readen JSON, dus ZipDump zal uitvoeren JSON standaard en strings zal JSON uitvoeren in. Oké en dan krijg je dit, wat eigenlijk dezelfde resultaat is, maar we gebruiken een andere format. Zoals je hier kunt zien, dit is hoe dit ziet. JSON, eerste id, de naam is content type en hier heb je de content in base 64 en dat gaat op voor iedere file in dat Zip file. Dus het is een structure content, het is niet zoals option D waar alle content was concatenateerd in een grote stream van binders. Nu, hier met JSON, er is structure te zijn. Dat is iets waarom ik begon te implementeren, een paar keer een paar jaar geleden, dat sommige van mijn tools supporten in het JSON format dat ik ontdekte, want mijn idee was om ook een tool te hebben dat me te laten filteren dat JSON format en selectie maken. En dat is een nieuwe tool, het is mijn JSON filter en je kunt, voor exemple, dan specifiek, ik wil alle streamen die de keyword XML ontdekten. Dus dat is met de C optie en XML is eigenlijk een regular expressie. Dus het filtert voor regular expressies en als we dat doen, zie je hier. Dus docks probleem van XML omdat in de content daar is de keyword XML hier ook core. Dus deze zijn alle XML files die zijn selecteerd. Als je het zo runnet, krijg je het JSON uit. Nu, om je te helpen, maak je filters, er is ook een option L. En dit zal je listen van alle items die worden selecteerd, zoals je kunt zien, XML en Rails. Er zijn geen binders in hier. Maar ik wil een beter filter dan gewoon zeggen XML, want ja, de keyword, wel, de drie karaktercombinationen, XML, zou ook in een bind file appearen en ik wil dat niet. Dus een eigen XML file begint met een kleiner dan de vraag van XML. Dus dat is een regular expressie dat we gaan gebruiken. Nu, een kleiner dan, heeft een speciaal betekening in de shell hier, in cmd.exe. Dus we gaan dit tussen dubbel quotes. En de vraag markt is ook een speciaal karakter voor regular expressies. Dus we gaan dit uitkijken. En dan willen we ook dit op het begin vinden. Dus dat is met een karret hier dat je het indikt. Dus dat is een regular expressie om alle files te selecten met een content die begint met een kleiner dan de vraag markt XML, zoals dit. En dat is wat we hebben. Nu, deze zijn niet de files we willen searchen. We willen searchen in de andere files, die gaan niet beginnen met XML. En voor dat, kun je een flag gebruiken. En dit is geen regular expressie, dit is specifiek voor het tool. Een hash, een v en een hash. Dat is de manier waar je flags en de v flag is de flag, zoals in grep, een option v, om de selectie te inverten, zoals dit. Dus nu hebben we de selectie inverterd, zoals je hier kunt zien, die zijn alle bin files, ook een png file die nu wordt selecteerd. Dus als we dit gewoon doen, zonder de l-optie, hebben we eigenlijk de JSON file content voor die files. En nu kunnen we dit opbouwen op strings, pie, zeggen dat het een JSON input is en een soort voor de lengte. En nu hebben we immediate de interessante strings aan het einde. De XML is in orde voor string extraction en dat is waarom we meer strings hebben om door te gaan. En hier, zoals het is, zijn we een beetje gelukkig. De interessante strings, de lange strings zijn aan het einde. Hier ziet het als url en hier kun je een deel zien. Als je een kijkje kijkt, is dit eigenlijk string concatenation. Dus h concatenate met ttp concatenate met s. Dus ik ga dit decodeen. Eerst van alles, ik ga nu niet meer soort voor de lengte, maar ik ga het selecten. Laten we alles proberen dat er op least 50 karakteren lang zijn. En nu hebben we alleen die expressies. En dan ga ik dit hier opbouwen. De dubbele quote, een procent dubbele quote. En ik ga de stream editor gebruiken. Dus ik ga een dubbele quote substitueren. En ik gebruik de XML representation hier. Een procent dubbele quote. En ik ga dit met niets verplaatsen. En ik ga dit globally doen, zoals dit. En dan in deze manier heb je de strings extracteerd, de urls. Dus in één single command, wanneer je niets kan schrijven, kun je de zip files filteren. Mijn office documents filteren ze voor binary files en dan doe een string search in die binary files.