its-a-feature / Mythic

A collaborative, multi-platform, red teaming framework
Other
3.22k stars 430 forks source link

Callback task description is lost after closing the callback tab. #345

Open timukas opened 11 months ago

timukas commented 11 months ago

Hi,

Using latest version of Mythic on Linux x64. If you interact with callback (or use 'Split Tasking') and set new tab description, then after closing and opening it again, tab description text is set to default.

And imho, adding IP address after or under "CALLBACK: XX" tab description would be a nice addon for UI.

its-a-feature commented 11 months ago

Great catch! I just pushed a fix that should make your custom descriptions persistent for all the tabs. I'll look into adding more data for the default tab values - out of curiosity, what's the reason you're looking for the IP as part of the tab? I wonder if it would be beneficial to have a hover text show things like IP, hostname, user, etc at a glance?

timukas commented 11 months ago

Tab descriptions are now presumed. Thanks for update/fix.

Having an IP in callback tab might have some benefit, if you need quickly copy/paste IP to another program (just an example). But currently text is not selectable from the tab, it just allows to re-order the tabs by dragging.

Having too much information on tab is also may be not very useful.

Another idea how to make selected tab more informative, is to highlight corresponding callback line. Something like this:

image

From table layout you can already copy/paste most of information about collab.

its-a-feature commented 11 months ago

haha I actually had that row highlighting feature in Mythic before it was called Mythic (back when it was called Apfell), but nobody seemed to use it or like it :/

If the point is that you're trying to copy some information about the callback from the tab though, then what if I expanded the context menu (right click) on the tab to also allow you to view the callback's metadata? Same as if you select the dropdown for the callback and select the metadata option towards the bottom?

timukas commented 11 months ago

Imho, highlighting looks more informative - you pick the tab and see what host/callback you are dealing with.

Adding 'right click' new context menu to the tab with metadata information is also nice add-on. You have full information about callback agent.

Personally, when dealing with callbacks, i need only ip, hostname and/or user (in very rare cases PID or process name). With highlighting feature you can copy/paste it easily from table layout with single click. For additional callback information, you can already pick 'View Metadata' option from callback menu.

Btw, since you've added new grouping feature for callbacks, would be cool to have group names from 'show/hide columns' option in table layout. And selected columns, can be persistent for user - if you login from other place, then selected columns are the same.

timukas commented 11 months ago

Tested mythic with 80+ callbacks from various networks.

IMO, once callback tab is selected, then highlighting (and focusing to specific callback in table view) would give most efficient way to work. E.g. You have dozens of callback tabs open. If you need to copy IP/host/user etc, then it's just 1 double-click on needed field in table view. Clicking between different callback tabs also would show promptly callback basic data from table view.

image

p.s. light green color was just my random pick ;)