Skip to content

Added Windows support.#104

Open
rubenae wants to merge 1 commit intolanmaster53:stagingfrom
rubenae:staging
Open

Added Windows support.#104
rubenae wants to merge 1 commit intolanmaster53:stagingfrom
rubenae:staging

Conversation

@rubenae
Copy link

@rubenae rubenae commented Jun 14, 2020

No description provided.

@lanmaster53
Copy link
Owner

How extensively has this been tested?

@rubenae
Copy link
Author

rubenae commented Jun 18, 2020

Hi Tim, it has been properly tested both on Windows and Linux, debugging to make sure everything it's working fine. I've also installed modules from the marketplace, loading and running them.

Moreover, I've integrated Elasticsearch with Recon-ng (recon-es), developing several modules (recon-es-marketplace).

Here you have the technical paper, it's my final project for the Software Engineering degree: TFG

Regards.

@lanmaster53
Copy link
Owner

Hi Tim, it has been properly tested both on Windows and Linux, debugging to make sure everything it's working fine. I've also installed modules from the marketplace, loading and running them.

Moreover, I've integrated Elasticsearch with Recon-ng (recon-es), developing several modules (recon-es-marketplace).

Here you have the technical paper, it's my final project for the Software Engineering degree: TFG

Regards.

Interesting. So it just replaces SQL with ES for setting and retrieving the default module sources? The rest of the code base looks unchanged.

@rubenae
Copy link
Author

rubenae commented Jun 21, 2020

Basically, yes. An index is created in Elasticsearch for each Recon-ng workspace, where documents containing the collected data are indexed, organised by type of data.

In addition, due to the lack of duplicity control in Elasticsearch as the autogenerated _id is independent of the indexed data, the _id used is instead the hashed dictionary values to avoid data redundancy.

@rogerlindberg
Copy link

The parsing of paths seems a bit complicated (using regexp). I suggest using os.sep to split paths into components. Example:
def _get_category(self, dirpath):
parts = dirpath.split(os.sep)
return parts[parts.index('modules') + 1]
def _get_dispname(self, dirpath, mod_name):
parts = dirpath.split(os.sep)
return os.sep.join(parts[parts.index('modules') + 1:] + [mod_name])
This should work for both Windows and Linux.

@lanmaster53 lanmaster53 force-pushed the staging branch 2 times, most recently from b8e879d to 9e907df Compare August 25, 2021 03:13
@kurogai
Copy link

kurogai commented Sep 18, 2023

Is this already merged?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants