-
-
Notifications
You must be signed in to change notification settings - Fork 511
Added HoneyScanner Analyzer #2982
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
JSON Result after a successful scan over externally hosted honeypot over EC2 |
|
Once the PR passes the review, i'll push the honeyscanner package to official pypi repository and change the corresponding entry in requirements.txt |
fgibertoni
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some small improvements. Great work overall!
| else: | ||
| ip_address = self.observable_name | ||
|
|
||
| logger.info(f"Running HoneyScanner for ip_address {ip_address}") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| logger.info(f"Running HoneyScanner for ip_address {ip_address}") | |
| logger.info(f"Running HoneyScanner for {ip_address=}") |
| password=self._honeypot_password, | ||
| ) | ||
|
|
||
| logger.info(f"Successfully executed honeyscanner for ip_address {ip_address}") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| logger.info(f"Successfully executed honeyscanner for ip_address {ip_address}") | |
| logger.info(f"Successfully executed honeyscanner for {ip_address=}") |
| Resolves a given hostname to its corresponding IP address. | ||
| """ | ||
| try: | ||
| ip_address = socket.gethostbyname(hostname) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what do you think about adding a parameter to specify custom DNS resolver? the default would still be socket.gethostbyname() if nothing is specified.
I'd also log the resolution of the hostname
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes that would be cool
| die-python==0.4.0 | ||
| guarddog==2.1.0 # version greater than 2.1.0 raises dependency conflicts | ||
|
|
||
| https://test-files.pythonhosted.org/packages/c3/cc/98e132fd77e2d21ed24197287431fb2b14e2e74a29471ea0652bff74d66d/honeyscanner-0.0.1-py3-none-any.whl |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we should wait to have an official package from honeynet. Otherwise, before merging this, we should fork @spoiicy's changes in our own fork and make our own pypi release: https://github.com/intelowlproject/honeyscanner
This allows better maintainability and avoid potential future issues
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems good. I concur.
mlodic
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
code is good and fine, but we must have the package officialy deployed on pip before merging this
|
This pull request has been marked as stale because it has had no activity for 10 days. If you are still working on this, please provide some updates or it will be closed in 5 days. |
|
This pull request has been closed because it had no updates in 15 days. If you're still working on this fell free to reopen. |
|
I am still having problems contacting the maintainers for this. I'll give them the last chance for this week then I think we can just bring the changes to our fork here https://github.com/intelowlproject/honeyscanner and release our own pypi release. |
closes #2708
Description
As part of this PR, a new analyzer has been added to intelowl - HoneyScanner to detect vulnerabilities in honeypot.
Significant effort has went into leveraging concurrency to optimise the honeyscanner pypi package in order to scan ports on external networks quickly using python's asyncio and optimizing the active attacks suiting the needs for analysis of honeypot over external network.
For curiosity, I've created a PR here honeynet/honeyscanner#51 for honeyscanner optimization.
Type of change
Please delete options that are not relevant.
Checklist
developdumpplugincommand and added it in the project as a data migration. ("How to share a plugin with the community")test_files.zipand you added the default tests for that mimetype in test_classes.py.FREE_TO_USE_ANALYZERSplaybook by following this guide.urlthat contains this information. This is required for Health Checks (HEAD HTTP requests)._monkeypatch()was used in its class to apply the necessary decorators.MockUpResponseof the_monkeypatch()method. This serves us to provide a valid sample for testing.DataModelfor the new analyzer following the documentation# This file is a part of IntelOwl https://github.com/intelowlproject/IntelOwl # See the file 'LICENSE' for copying permission.Black,Flake,Isort) gave 0 errors. If you have correctly installed pre-commit, it does these checks and adjustments on your behalf.testsfolder). All the tests (new and old ones) gave 0 errors.DeepSource,Django Doctorsor other third-party linters have triggered any alerts during the CI checks, I have solved those alerts.Important Rules