This small update for emldump adds support for UTF8 files that start with a BOM.
emldump_V0_0_14.zip (http)MD5: 6DBA97A55A9BE0D94131F1F381868236
SHA256: 99E1254011C6738FC44E559B4A29A8D40C79822A946F853D12EF23E035CEE97B
This small update for emldump adds support for UTF8 files that start with a BOM.
emldump_V0_0_14.zip (http)New option -O allows to use a function that receives a object per line as argument.
Like option -n, option -O is used to invoke a single Python function taking one argument, but this time the argument is an object in stead of a string. The object has several properties: item is the line (string), left is the previous line, right is the next line, index is equal to the line counter – 1.
python-per-line_V0_0_12.zip (http)New features in this version of InteractiveSieve are:
Load and Split
With Load and Split; you can load a CSV file and split rows that have a field that contains more than one value, separated by a separator character.
Take this example:
IP,Count,Methods
10.0.0.220,5,GET
10.0.0.45,13554,GET|POST
10.0.0.135,54302,GET|HEAD|POST
Fields in column Methods can have more than one value: GET, POST and/or HEAD. These values are separated by a pipe | character.
Simply loading this CSV file in InteractiveSieve gives this:
While using Load and Split with separator | for column 3 (Methods) gives this:
Ignore Comments
The Options dialog has now a field “Ignore comments”:
This can be used to ignore each line that starts with the given line-comment character.
Take this CSV file for example:
#Produced 2024/06/01
IP,Count,Methods
10.0.0.220,5,GET
10.0.0.45,13554,GET|POST
#Extra comment
10.0.0.135,54302,GET|HEAD|POST
When loaded in InteractiveSieve without “Ignore comments” character, the result is this:
And providing line-comment character # gives this:
Show
The Show command in the right-click menu for a row gives this dialog:
Sum
The Sum command in the right-click menu for a cell can be used to sum the numerical values of that column. There is no need to convert the text to numbers first.
Group
And finally, there’s the Group command in the right-click menu for a column.
This is a bit the opposite of Load and Split.
Take this CSV file for example:
Let’s say I want to group Methods by IP address. First I specify that column IP is the index:
Next I select column Methods to Group:
And then I specify the separator (~ in this example):
The original values can be restored with Restore from group:
This new version adds a new post processing function to extract the longest string from the decoded payload (ExtractLongestString). Post processing functions take the decoded content, and replace it with the processed content. To view to original decoded content, the select option -s now supports suffix o. For example, to select the original decoded content of entry 5, use option -s 5o.
And there is now a –sort option to sort the entries based on payload, decoded content, length, …
base64dump_V0_0_25.zip (http)I added option -j –jsonoutput to my pdf-parser.py tool.
This option produces JSON output with the content of all of the streams, unfiltered.
To have the filtered stream content as JSON output, include option -f.
pdf-parser_V0_7_9.zip (http)This is a small change to my FileScanner tool to make it long path aware.
FileScanner_V0_0_0_9.zip (http)Added option -D –dumpformat to specify the format of the dumped information when using option -d.
what-is-new_V0_0_4.zip (http)I added IPv6 support to simple_listener.py.
Although it was not by design, it turned out that simple_listener.py only works for IPv4. So I made some small changes to add IPv6 support.
When you use dictionary to define your listeners, use THP_TCP6 and THP_UDP6 to define TCP IPv6 and UDP IPv6 listeners respectively. The meaning of THP_TCP and THP_UDP has not changed, that’s for IPv4 listeners.
When you use port options to define your listeners, use prefix t6: and u6: to define TCP IPv6 and UDP IPv6 listeners respectively. The meaning of t: and u: has not changed, that’s for IPv4 listeners.
And by default, listening takes place on all IPv4 interfaces (0.0.0.0) when IPv4 listeners are defined, and listening takes place on all IPv6 interfaces (::) when IPv6 listeners are defined. That’s governed by option -a –address’ default value 0.0.0.0,::.
To explicitly specify an interface with option -a, you will need to provide an IPv4 address and an IPv6 address separated by a comma.
simple_listener_v0_1_5.zip (http)This new version brings option –encoding, to handle different text encodings.
count_v0_3_2.zip (http)