Skip to content
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

fixes #1699 Permhash analyzer #2258

Merged
merged 28 commits into from May 10, 2024

Conversation

moonpatel
Copy link
Contributor

@moonpatel moonpatel commented Apr 11, 2024

(Please add to the PR name the issue/s that this PR would close if merged by using a Github keyword. Example: <feature name>. Closes #999. If your PR is made by a single commit, please add that clause in the commit too. This is all required to automate the closure of related issues.)

Description

Closes #1699
New analyzer: Permhash

Type of change

New analyzer

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue).
  • New feature (non-breaking change which adds functionality).
  • Breaking change (fix or feature that would cause existing functionality to not work as expected).

Checklist

  • I have read and understood the rules about how to Contribute to this project
  • The pull request is for the branch develop
  • A new plugin (analyzer, connector, visualizer, playbook, pivot or ingestor) was added or changed, in which case:
    • I strictly followed the documentation "How to create a Plugin"
    • Usage file was updated.
    • Advanced-Usage was updated (in case the plugin provides additional optional configuration).
    • If the plugin requires mocked testing, _monkeypatch() was used in its class to apply the necessary decorators.
    • I have dumped the configuration from Django Admin using the dumpplugin command and added it in the project as a data migration. ("How to share a plugin with the community")
    • If a File analyzer was added and it supports a mimetype which is not already supported, you added a sample of that type inside the archive test_files.zip and you added the default tests for that mimetype in test_classes.py.
    • If you created a new analyzer and it is free (does not require API keys), please add it in the FREE_TO_USE_ANALYZERS playbook by following this guide.
    • Check if it could make sense to add that analyzer/connector to other freely available playbooks.
    • I have provided the resulting raw JSON of a finished analysis and a screenshot of the results.
    • I have added that raw JSON sample to the MockUpResponse of the _monkeypatch() method. This serves us to provide a valid sample for testing.
  • If changes were made to an existing model/serializer/view, the docs were updated and regenerated (check CONTRIBUTE.md).
  • If external libraries/packages with restrictive licenses were used, they were added in the Legal Notice section.
  • Linters (Black, Flake, Isort) gave 0 errors. If you have correctly installed pre-commit, it does these checks and adjustments on your behalf.
  • I have added tests for the feature/bug I solved (see tests folder). All the tests (new and old ones) gave 0 errors.
  • If the GUI has been modified:
    • I have a provided a screenshot of the result in the PR.
    • I have created new frontend tests for the new component or updated existing ones.
  • After you had submitted the PR, if DeepSource, Django Doctors or other third-party linters have triggered any alerts during the CI checks, I have solved those alerts.

Important Rules

  • If you miss to compile the Checklist properly, your PR won't be reviewed by the maintainers.
  • Everytime you make changes to the PR and you think the work is done, you should explicitly ask for a review. After being reviewed and received a "change request", you should explicitly ask for a review again once you have made the requested changes.

Output screenshot

image

JSON output

{
    "hash":"aad106ceb64ac2a636ddec77c3feed4c2ffc5c27ab353660d8cb3e1c971df277"
}

@moonpatel
Copy link
Contributor Author

Hey @mlodic I have added new mimetypes for .crx and .json but migration shows error.
Here are the migration error logs:

intelowl_uwsgi                  |   Applying analyzers_manager.0066_analyzer_config_phoneinfoga... OK
intelowl_uwsgi                  |   Applying analyzers_manager.0067_update_misp... OK
intelowl_uwsgi                  |   Applying analyzers_manager.0068_analyzer_config_feodo_tracker... OK
intelowl_uwsgi                  |   Applying analyzers_manager.0069_analyzer_config_bgp_ranking... OK
intelowl_uwsgi                  |   Applying analyzers_manager.0070_urlhaus_threatfox_disable_param... OK
intelowl_uwsgi                  |   Applying analyzers_manager.0071_analyzer_config_tor_nodes_danmeuk... OK
intelowl_uwsgi                  |   Applying analyzers_manager.0072_analyzer_config_tweetfeed... OK
intelowl_uwsgi                  |   Applying analyzers_manager.0073_remove_dragonfly_analyzer... OK
intelowl_uwsgi                  |   Applying analyzers_manager.0074_adjust_maximum_tlp... OK
intelowl_uwsgi                  |   Applying analyzers_manager.0075_adjust_greynoise... OK
intelowl_uwsgi                  |   Applying analyzers_manager.0076_analyzer_config_greynoise_labs... OK
intelowl_uwsgi                  |   Applying analyzers_manager.0077_analyzer_config_abusix... OK
intelowl_uwsgi                  | Traceback (most recent call last):
intelowl_uwsgi                  |   File "/opt/deploy/intel_owl/api_app/analyzers_manager/migrations/0078_analyzer_config_permhash.py", line 54, in _create_object
intelowl_uwsgi                  |     o = Model.objects.get(**no_mtm)
intelowl_uwsgi                  |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/db/models/manager.py", line 87, in manager_method
intelowl_uwsgi                  |     return getattr(self.get_queryset(), name)(*args, **kwargs)
intelowl_uwsgi                  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/db/models/query.py", line 637, in get
intelowl_uwsgi                  |     raise self.model.DoesNotExist(
intelowl_uwsgi                  | __fake__.AnalyzerConfig.DoesNotExist: AnalyzerConfig matching query does not exist.
intelowl_uwsgi                  | 
intelowl_uwsgi                  | During handling of the above exception, another exception occurred:
intelowl_uwsgi                  | 
intelowl_uwsgi                  | Traceback (most recent call last):
intelowl_uwsgi                  |   File "/opt/deploy/intel_owl/manage.py", line 25, in <module>
intelowl_uwsgi                  |     main()
intelowl_uwsgi                  |   File "/opt/deploy/intel_owl/manage.py", line 21, in main
intelowl_uwsgi                  |     execute_from_command_line(sys.argv)
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/__init__.py", line 442, in execute_from_command_line
intelowl_uwsgi                  |     utility.execute()
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/__init__.py", line 436, in execute
intelowl_uwsgi                  |     self.fetch_command(subcommand).run_from_argv(self.argv)
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/base.py", line 412, in run_from_argv
intelowl_uwsgi                  |     self.execute(*args, **cmd_options)
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/base.py", line 458, in execute
intelowl_uwsgi                  |     output = self.handle(*args, **options)
intelowl_uwsgi                  |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/base.py", line 106, in wrapper
intelowl_uwsgi                  |     res = handle_func(*args, **kwargs)
intelowl_uwsgi                  |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
intelowl_uwsgi                  |   File "/opt/deploy/intel_owl/api_app/management/commands/migrate.py", line 8, in handle
intelowl_uwsgi                  |     super().handle(*args, **options)
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/base.py", line 106, in wrapper
intelowl_uwsgi                  |     res = handle_func(*args, **kwargs)
intelowl_uwsgi                  |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/commands/migrate.py", line 356, in handle
intelowl_uwsgi                  |     post_migrate_state = executor.migrate(
intelowl_uwsgi                  |                          ^^^^^^^^^^^^^^^^^
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/db/migrations/executor.py", line 135, in migrate
intelowl_uwsgi                  |     state = self._migrate_all_forwards(
intelowl_uwsgi                  |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/db/migrations/executor.py", line 167, in _migrate_all_forwards
intelowl_uwsgi                  |     state = self.apply_migration(
intelowl_uwsgi                  |             ^^^^^^^^^^^^^^^^^^^^^
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/db/migrations/executor.py", line 252, in apply_migration
intelowl_uwsgi                  |     state = migration.apply(state, schema_editor)
intelowl_uwsgi                  |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/db/migrations/migration.py", line 132, in apply
intelowl_uwsgi                  |     operation.database_forwards(
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/db/migrations/operations/special.py", line 193, in database_forwards
intelowl_uwsgi                  |     self.code(from_state.apps, schema_editor)
intelowl_uwsgi                  |   File "/opt/deploy/intel_owl/api_app/analyzers_manager/migrations/0078_analyzer_config_permhash.py", line 72, in migrate
intelowl_uwsgi                  |     exists = _create_object(Model, plugin)
intelowl_uwsgi                  |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
intelowl_uwsgi                  |   File "/opt/deploy/intel_owl/api_app/analyzers_manager/migrations/0078_analyzer_config_permhash.py", line 57, in _create_object
intelowl_uwsgi                  |     o.full_clean()
intelowl_uwsgi                  |   File "/usr/local/lib/python3.11/site-packages/django/db/models/base.py", line 1502, in full_clean
intelowl_uwsgi                  |     raise ValidationError(errors)
intelowl_uwsgi                  | django.core.exceptions.ValidationError: {'supported_filetypes': ["Item 6 in the array did not validate: Value 'application/x-chrome-extension' is not a valid choice."]}
intelowl_uwsgi                  |   Applying analyzers_manager.0078_analyzer_config_permhash...Issue with migration exiting
intelowl_uwsgi exited with code 1
dependency failed to start: container intelowl_uwsgi exited (1)

@moonpatel moonpatel changed the base branch from master to develop April 11, 2024 13:12
Comment on lines +87 to 89
CRX = "application/x-chrome-extension"
JSON = "application/json"

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you are changing a model, you need to do a migration for this change too


hash_val = ""

if file_extension == "apk":
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why check the file extension when you can use the mimetype?

elif file_extension == "json":
hash_val = permhash.permhash_crx_manifest(self.filepath)
else:
result["error"] = "Invalid file extension."
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you should raise the AnalyzerRunException

if hash_val:
result["hash"] = hash_val
else:
result["error"] = "Could not find permissions in the file."
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you should raise the AnalyzerRunException

Copy link
Contributor Author

@moonpatel moonpatel Apr 13, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

======================================================================
FAIL: test_subclasses (tests.api_app.analyzers_manager.test_classes.FileAnalyzerTestCase.test_subclasses)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/opt/deploy/intel_owl/tests/api_app/analyzers_manager/test_classes.py", line 133, in test_subclasses
    sub.start(job.pk, {}, uuid())
  File "/usr/local/lib/python3.11/unittest/mock.py", line 1375, in patched
    return func(*newargs, **newkeywargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/deploy/intel_owl/api_app/classes.py", line 208, in start
    self.after_run_failed(e)
  File "/opt/deploy/intel_owl/api_app/classes.py", line 153, in after_run_failed
    raise e
  File "/opt/deploy/intel_owl/api_app/classes.py", line 206, in start
    _result = self.run()
              ^^^^^^^^^^
  File "/opt/deploy/intel_owl/api_app/analyzers_manager/file_analyzers/perm_hash.py", line 52, in run
    raise AnalyzerRunException("Could not find permissions in the file.")
api_app.analyzers_manager.exceptions.AnalyzerRunException: Could not find permissions in the file.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/deploy/intel_owl/tests/api_app/analyzers_manager/test_classes.py", line 135, in test_subclasses
    self.fail(
AssertionError: Analyzer Permhash with config Permhash and mimetype application/vnd.android.package-archive failed Could not find permissions in the file.

----------------------------------------------------------------------
Ran 312 tests in 210.989s

FAILED (failures=1, skipped=1)
Preserving test database for alias 'default'...
Error: Process completed with exit code 1.

I think we should not raise the exception here as it fails the test cases
OR
we can replace the sample.apk in the test_files.zip with an apk that has an AndroidManifest.xml with permissions included as the current sample.apk's manifest file has no such thing. But replacing that apk may led to some test failures in other file analyzers. What are your thoughts @mlodic ?

@moonpatel
Copy link
Contributor Author

This analyzer is not working when I tried testing it in the frontend. This is what I get (although other analyzers are working fine):
image

@mlodic
Copy link
Member

mlodic commented Apr 11, 2024

if you don't show the logs I don't know how to help. Also, please pull from develop that you have conflicts

size=None,
),
),
]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please write also a reverse_migrate function. That helps to recover in case of mistakes

@@ -0,0 +1,128 @@
from django.db import migrations
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please also add this analyzer to the freely available playbook + to the static analyzer playbook

@mlodic
Copy link
Member

mlodic commented Apr 11, 2024

you also need to change the test_classes.py if you add a new filetype and add a new test file for that type

@moonpatel
Copy link
Contributor Author

2024-04-11 17:20:39,528 - api_app.models - set_final_status - INFO - <Job: Job(#1, "12.1.2.3")> setting status to reported_without_fails
2024-04-11 17:20:39,534 - api_app.websocket - serialize_and_send_job - DEBUG - send data for the job: 1 to the groups: ['job-1', 'job-1-perm']
2024-04-11 17:20:39,535 - api_app.websocket - serialize_and_send_job - DEBUG - send data to the group: job-1
2024-04-11 17:20:39,622 - api_app.websocket - serialize_and_send_job - DEBUG - send data to the group: job-1-perm
2024-04-11 17:21:54,451 - api_app.views - analyze_multiple_files - INFO - received analyze_multiple_files from user moon
2024-04-11 17:21:54,465 - api_app.serializers.job - validate - DEBUG - before attrs: OrderedDict([('user', <SimpleLazyObject: <User: moon>>), ('is_sample', True), ('tlp', 'AMBER'), ('analyzers_requested', [<AnalyzerConfig: Permhash>]), ('connectors_requested', []), ('tags_labels', <generator object _AbstractJobCreateSerializer.validate_tags_labels at 0x7fe69c27f840>), ('scan_mode', 2), ('scan_check_time', datetime.timedelta(days=1)), ('investigation', None), ('file', <InMemoryUploadedFile: bitbar-sample-app.apk (application/vnd.android.package-archive)>)])
2024-04-11 17:21:54,532 - api_app.serializers.job - validate - DEBUG - after attrs: OrderedDict([('user', <SimpleLazyObject: <User: moon>>), ('is_sample', True), ('tlp', 'AMBER'), ('analyzers_requested', [<AnalyzerConfig: Permhash>]), ('connectors_requested', []), ('scan_mode', 2), ('scan_check_time', datetime.timedelta(days=1)), ('investigation', None), ('file', <InMemoryUploadedFile: bitbar-sample-app.apk (application/vnd.android.package-archive)>), ('file_name', 'bitbar-sample-app.apk'), ('file_mimetype', MimeTypes.APK), ('md5', '00cc5435151aa38a091781922c0390a4'), ('analyzers_to_execute', [<AnalyzerConfig: Permhash>]), ('connectors_to_execute', []), ('visualizers_to_execute', []), ('warnings', []), ('tags', <generator object _AbstractJobCreateSerializer.validate_tags_labels at 0x7fe69c27f840>)])
2024-04-11 17:21:54,533 - api_app.serializers.job - check_previous_jobs - INFO - Checking previous jobs
2024-04-11 17:21:54,604 - api_app.serializers.job - create - INFO - Job 2 created
2024-04-11 17:21:54,604 - api_app.serializers.job - create - INFO - Sending task for job 2
2024-04-11 17:21:54,626 - api_app.views - analyze_multiple_files - INFO - finished analyze_multiple_files from user moon
2024-04-11 17:21:55,943 - api_app.views - get_queryset - INFO - user: moon request the jobs with params: <QueryDict: {}>
2024-04-11 17:21:56,387 - api_app.views - get_queryset - INFO - user: moon request the jobs with params: <QueryDict: {}>
2024-04-11 17:22:17,056 - api_app.mixins - list - DEBUG - View list_ConnectorConfig_moon_1_70 cache hit
2024-04-11 17:22:17,085 - api_app.mixins - list - DEBUG - View list_AnalyzerConfig_moon_1_70 cache hit
2024-04-11 17:22:17,185 - api_app.mixins - list - DEBUG - View list_PivotConfig_moon_1_70 cache hit
2024-04-11 17:22:17,317 - api_app.mixins - list - DEBUG - View list_VisualizerConfig_moon_1_70 cache hit
2024-04-11 17:22:17,419 - api_app.views - get_queryset - INFO - user: moon request the jobs with params: <QueryDict: {}>
2024-04-11 17:22:17,478 - api_app.mixins - list - DEBUG - View list_IngestorConfig_moon_1_70 cache hit
2024-04-11 17:22:17,584 - api_app.mixins - list - DEBUG - View list_AnalyzerConfig_moon_2_70 cache hit
2024-04-11 17:22:17,760 - api_app.mixins - list - DEBUG - View list_AnalyzerConfig_moon_3_70 cache hit
2024-04-11 17:22:17,864 - api_app.mixins - list - DEBUG - View list_PlaybookConfig_moon_1_70 cache hit
2024-04-11 17:22:21,377 - api_app.views - get_queryset - INFO - user: moon request the jobs with params: <QueryDict: {}>

@mlodic

image

@moonpatel
Copy link
Contributor Author

Actually, I solved it myself. There was some issue with the latest version of permhash library (v0.1.4.2). I used v0.1.4 and it worked perfectly fine.

 => added AndroidManifest.xml, manifest.json and sample.crx to
test_files.zip
 => added test cases for xml, json and crx in
tests/api_app/analyzers_manager/test_classes.py
@moonpatel moonpatel changed the title Permhash analyzer fixes #1699 Permhash analyzer Apr 13, 2024
@moonpatel moonpatel marked this pull request as ready for review April 13, 2024 19:26
@moonpatel moonpatel closed this Apr 15, 2024
@moonpatel moonpatel reopened this Apr 15, 2024
@moonpatel moonpatel closed this Apr 16, 2024
@moonpatel moonpatel reopened this Apr 16, 2024
@moonpatel moonpatel closed this Apr 18, 2024
@moonpatel moonpatel reopened this Apr 18, 2024
@mlodic mlodic merged commit c2272a9 into intelowlproject:develop May 10, 2024
11 checks passed
mlodic added a commit that referenced this pull request May 13, 2024
* Fix migration signal

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix kwargs

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fail if in production mode

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Validated disable with 429

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix is_from_org information

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix greynoise api requirement

Signed-off-by: 0ssigeno <s.berni@certego.net>

* fixes #1758 - greynoise labs analyzer (#2225)

* greynoise labs analyzer

* fix

* update migration numbers

* update maximum tlp

* fix

---------

Signed-off-by: 0ssigeno <s.berni@certego.net>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Shivam Purohit <shivampurohit900@gmail.com>
Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>
Co-authored-by: Daniele Rosetti <d.rosetti@certego.net>
Co-authored-by: 0ssigeno <s.berni@certego.net>
Co-authored-by: Martina Carella <m.carella@certego.net>
Co-authored-by: Daniele Rosetti <55402684+drosetti@users.noreply.github.com>
Co-authored-by: fgibertoni <152909479+fgibertoni@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>
Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>
Co-authored-by: Shivam Purohit <shivampurohit900@gmail.com>

* removed scanner issue template

* fixes #1663 - Abusix analyzer (#2233)

* fixes #1663 - abusix analyzer

* fix

* updated migration numbers

---------

Signed-off-by: 0ssigeno <s.berni@certego.net>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Shivam Purohit <shivampurohit900@gmail.com>
Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>
Co-authored-by: Daniele Rosetti <d.rosetti@certego.net>
Co-authored-by: 0ssigeno <s.berni@certego.net>
Co-authored-by: Martina Carella <m.carella@certego.net>
Co-authored-by: Daniele Rosetti <55402684+drosetti@users.noreply.github.com>
Co-authored-by: fgibertoni <152909479+fgibertoni@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>
Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>
Co-authored-by: Shivam Purohit <shivampurohit900@gmail.com>

* Bump uwsgitop from 0.11 to 0.12 in /requirements (#2237)

Bumps [uwsgitop](https://github.com/xrmx/uwsgitop) from 0.11 to 0.12.
- [Commits](xrmx/uwsgitop@v0.11...v0.12)

---
updated-dependencies:
- dependency-name: uwsgitop
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fix ses email

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Jobs now requires both analyzers AND connectors to be empty

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fixes for quad9

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Removed comment on enable back

Signed-off-by: 0ssigeno <s.berni@certego.net>

* HTTPerror should not have the entire traceback

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Trying to unlock the git process deleting the lock file

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix ingestor periodic task

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix retrieval of the task

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix ingestor python class retrieval

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix test

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix tests

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fixes

Signed-off-by: 0ssigeno <s.berni@certego.net>

* specified version of nginx

* Priority mgmt (#2242)

* Priority mgmt

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Blake

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Docs

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Changed order of cache table

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Manage case where cache it is not initialized

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fixes

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Blake

Signed-off-by: 0ssigeno <s.berni@certego.net>

---------

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Bump pillow from 10.2.0 to 10.3.0 in /requirements (#2240)

Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.2.0 to 10.3.0.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](python-pillow/Pillow@10.2.0...10.3.0)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: direct:production
...

Signed-off-by: 0ssigeno <s.berni@certego.net>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Shivam Purohit <shivampurohit900@gmail.com>
Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>
Co-authored-by: Daniele Rosetti <d.rosetti@certego.net>
Co-authored-by: 0ssigeno <s.berni@certego.net>
Co-authored-by: Martina Carella <m.carella@certego.net>
Co-authored-by: Daniele Rosetti <55402684+drosetti@users.noreply.github.com>
Co-authored-by: fgibertoni <152909479+fgibertoni@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>
Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>
Co-authored-by: Shivam Purohit <shivampurohit900@gmail.com>

* fixed rescan observable (#2243)

* Added pivot buttons (#2239)

* added pivot buttons

* fixes

* linter

* docs

* updated doc

* changes

---------

Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>

* added tlp info icon (#2246)

* adjusted 'Investigation Overview' button (#2244)

* adjusted investigation button

* fix

* Allow filtering for disabled boolean

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix cache

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix env variables + healthcheck

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix visualizable table (#2249)

* Fix images url

* Fixed table images using absolute url

* improved frontend validation in visualizer framework

* modified JobIsRunningAlert component (#2256)

* changed JobIsRunningAlert

* prettier

* mocked flow

* adjusts to default domain reputation visualizer + analyzers urls and abstractmethods (#2250)

* little adjusts

* adjust

* refactored base_url in url to enable healthchecks

* adjust

* added update abstract method

* added logging of intel_owl package

* adjusted containers dependencies

* Fix

Signed-off-by: 0ssigeno <s.berni@certego.net>

* support for Elastic8 and removal of support for older versions (#2262)

* support for elastic 8

* elastic8

* elastic8

* removed elasticsearch sniffing

* Update migration guide from postgres 12 to 16 (#2260)

* Improved migration from postgres 12 to postgres 16

* Trimmed extra whitespaces

* Fix volume

Signed-off-by: 0ssigeno <s.berni@certego.net>

* fixes #1698 - hfinger analyzer (#2241)

* hfinger analyzer

* dependency for hfinger analyzer

* migrations for hfinger analyzer

* overridden update method

* default config fix

* modified usage.md

* fix

* fix

* Fix phoneinfo

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Minor fix

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fixes

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fixing logs

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Bump channels from 4.0.0 to 4.1.0 in /requirements (#2255)

Bumps [channels](https://github.com/django/channels) from 4.0.0 to 4.1.0.
- [Changelog](https://github.com/django/channels/blob/main/CHANGELOG.txt)
- [Commits](django/channels@4.0.0...4.1.0)

---
updated-dependencies:
- dependency-name: channels
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump quark-engine from 24.2.1 to 24.4.1 in /requirements (#2254)

Bumps [quark-engine](https://github.com/quark-engine/quark-engine) from 24.2.1 to 24.4.1.
- [Release notes](https://github.com/quark-engine/quark-engine/releases)
- [Commits](quark-engine/quark-engine@v24.2.1...v24.4.1)

---
updated-dependencies:
- dependency-name: quark-engine
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* adjusted guide (#2264)

* Fix docs

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Little adjusts (#2263)

* little adjusts

* adjust

* refactored base_url in url to enable healthchecks

* adjust

* added update abstract method

* added logging of intel_owl package

* adjusted threatfox

* threatfox analyzer fix

* threatfox analyzer fix

* threatfox analyzer fix

* threatfox analyzer fix

* threatfox analyzer fix

* elastic shards/replicas reduced

* Fix

Signed-off-by: 0ssigeno <s.berni@certego.net>

* typo

* fix

Signed-off-by: 0ssigeno <s.berni@certego.net>

* adjusted NodeToolbar (#2273)

* Fix migration

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Cache are adjusted through celery

Signed-off-by: 0ssigeno <s.berni@certego.net>

* fix

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Added stop step for intermediate container (#2266)

* create_or_update

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Typo

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fixes

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Remove dns0 analyzers (#2274)

* Added migrations to remove analyzers and playbook

* Removed analyzers sources

* Removed dns0 analyzer from docs

* Fix

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix black

* Added if conditions for saver migrations

---------

Signed-off-by: 0ssigeno <s.berni@certego.net>
Co-authored-by: 0ssigeno <s.berni@certego.net>

* Frontend - adjusted job metadata section (#2272)

* adjusted JobInfoCard

* fixed  fitView in chrome

* Frontend - improvements (#2278)

* improvements

* fixed test

* Fix_ci (#2284)

* Fix_ci

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Typo

Signed-off-by: 0ssigeno <s.berni@certego.net>

---------

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Optimization

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Optimization

Signed-off-by: 0ssigeno <s.berni@certego.net>

* ASN maxmind integration (#2282)

* Changed library from maxminddb to geoip2

* Refactoring maxmind not finished

* Refactoring maxmind analyzer

* Added methods for query db

* Made a method 'private'

* Renamed method

* Made attributes 'private'

* Added return type

* Improved log message

* Renamed back to update() because of updating cron

* Fixed media_root settings

* Added log to tar extraction

* Removed unnecessary variable

* Improved log messages

* Readded maxminddb library

* Update api_app/analyzers_manager/observable_analyzers/maxmind.py

Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>

* Fix_ci (#2284)

* Fix_ci

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Typo

Signed-off-by: 0ssigeno <s.berni@certego.net>

---------

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Changed library from maxminddb to geoip2

* Refactoring maxmind not finished

* Refactoring maxmind analyzer

* Added methods for query db

* Made a method 'private'

* Renamed method

* Made attributes 'private'

* Added return type

* Improved log message

* Renamed back to update() because of updating cron

* Fixed media_root settings

* Added log to tar extraction

* Removed unnecessary variable

* Improved log messages

* Readded maxminddb library

* Moved functions and improved logs

* Changed error handling

* Fixed deepsource warning

---------

Signed-off-by: 0ssigeno <s.berni@certego.net>
Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>
Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>

* Abusix send email (#2283)

* Added AbuseSubmitter connector

* Renamed and updated connector EmailSender

* Added monkeypatch to email sender connector

* Updated EmailSender parameters

* Added AbuseDomainToAbuseIp pivot

* Updated AbuseDomainToAbuseIp pivot

* Updated pivots

* Changed health_check_status to editable

* Changed health_check_status back to not editable

* receiver update

* subject and body update

* added abusix update migration

* fix investigation creation

* updated AbuseDomainToIp should_run

* updated AbuseIpToSubmission should_run

* added plugin migrations

* fix migrations

* Changed email sender body

* fixed migrations dependencies

* updates email sender and abuse submitter

* Fix migrations

* Fix

* Fix

* Fix playbooks migrations

* Update api_app/connectors_manager/connectors/abuse_submitter.py

Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>

* Added AbuseSubmitter connector

* Renamed and updated connector EmailSender

* Added monkeypatch to email sender connector

* Updated EmailSender parameters

* Added AbuseDomainToAbuseIp pivot

* Updated AbuseDomainToAbuseIp pivot

* Updated pivots

* Changed health_check_status to editable

* Changed health_check_status back to not editable

* receiver update

* subject and body update

* added abusix update migration

* fix investigation creation

* updated AbuseDomainToIp should_run

* updated AbuseIpToSubmission should_run

* added plugin migrations

* fix migrations

* Changed email sender body

* fixed migrations dependencies

* updates email sender and abuse submitter

* Fix migrations

* Fix

* Fix

* Fix playbooks migrations

* added update method

* added update method

* removed AbuseSubmitter values

Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>

* removed EmailSender values

* Update should_run

Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>

* changed AbuseDomainToAbuseIp to AnyCompare

* update compare

* added update

* removed AbuseIpToSubmission

* Added AbuseSubmitter connector

* Renamed and updated connector EmailSender

* Added monkeypatch to email sender connector

* Updated EmailSender parameters

* Added AbuseDomainToAbuseIp pivot

* Updated AbuseDomainToAbuseIp pivot

* Updated pivots

* Changed health_check_status to editable

* Changed health_check_status back to not editable

* receiver update

* subject and body update

* added abusix update migration

* fix investigation creation

* updated AbuseDomainToIp should_run

* updated AbuseIpToSubmission should_run

* added plugin migrations

* fix migrations

* Changed email sender body

* fixed migrations dependencies

* updates email sender and abuse submitter

* Fix migrations

* Fix

* Fix

* Fix playbooks migrations

* added update method

* Added AbuseSubmitter connector

* Changed health_check_status to editable

* Changed health_check_status back to not editable

* added abusix update migration

* added plugin migrations

* fix migrations

* fixed migrations dependencies

* Fix migrations

* removed AbuseSubmitter values

Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>

* removed EmailSender values

* Update should_run

Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>

* changed AbuseDomainToAbuseIp to AnyCompare

* update compare

* added update

* removed AbuseIpToSubmission

* Fix pivot migrations

* Renamed playbook Abuse_Domain to Takedown_Request

* Update api_app/connectors_manager/connectors/abuse_submitter.py

Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>

* Update api_app/connectors_manager/connectors/abuse_submitter.py

Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>

* Added EmailSender header and footer

* Fix linters

* Fix test

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix pivot test

* Fix

Signed-off-by: 0ssigeno <s.berni@certego.net>

---------

Signed-off-by: 0ssigeno <s.berni@certego.net>
Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>
Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>
Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>
Co-authored-by: 0ssigeno <s.berni@certego.net>

* Fixed EmailSender output and plugin descriptions (#2290)

* Updated EmailSender output

* Updated plugin descriptions

* Update authentication/models.py

Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>

* Update authentication/models.py

Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>

* deepsource adjusts

* bump and changelog

* fixes for Yara

* removing Yara visualizer from Static Analysis Playbook and updated and fixed Floss Analyzer

* Removed mkdir

Signed-off-by: 0ssigeno <s.berni@certego.net>

* blake post merge

* Yara already made in dockerfile

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Removed import

Signed-off-by: 0ssigeno <s.berni@certego.net>

* update yara visualizer

* Docs update (#2293)

* Added list of pre-built pivots

* Added list of pre-built connectors

* Added list of pre-built playbooks

* Added already implemented modules for pivots

* Added running a plugin

* tried adjust

* Adjust field_to_compare description

---------

Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>

* Fix dependencies

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Typo

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Upgrade docs

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fixed update with None token (#2287)

* Bump django-ses from 3.5.0 to 4.0.0 in /requirements (#2280)

Bumps [django-ses](https://github.com/django-ses/django-ses) from 3.5.0 to 4.0.0.
- [Release notes](https://github.com/django-ses/django-ses/releases)
- [Changelog](https://github.com/django-ses/django-ses/blob/main/CHANGES.md)
- [Commits](django-ses/django-ses@v3.5.0...v4.0.0)

---
updated-dependencies:
- dependency-name: django-ses
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump djangorestframework from 3.14.0 to 3.15.1 in /requirements (#2219)

Bumps [djangorestframework](https://github.com/encode/django-rest-framework) from 3.14.0 to 3.15.1.
- [Release notes](https://github.com/encode/django-rest-framework/releases)
- [Commits](encode/django-rest-framework@3.14.0...3.15.1)

---
updated-dependencies:
- dependency-name: djangorestframework
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump library/nginx from 1.25.4-alpine to 1.26.0-alpine in /docker (#2285)

Bumps library/nginx from 1.25.4-alpine to 1.26.0-alpine.

---
updated-dependencies:
- dependency-name: library/nginx
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Starting playbooks (#2297)

* starting playbooks

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Not starting

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix migration

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Prettier

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix

Signed-off-by: 0ssigeno <s.berni@certego.net>

---------

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Add IP2WHOIS (#2288)

* Add IP2WHOIS

* Update Usage.md

* Update ip2whois.py

- Add an example JSON result to showcase the fields in the result.
- Attempt to fix an error reported by DeepSource: Python.

* Update ip2whois.py

Fix formatting error.

* Update ip2whois.py

Fix the E501 line too long error by changed to another JSON example.

* Update ip2whois.py

* fixed migration

---------

Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>

* Bump gunicorn from 20.1.0 to 22.0.0 in /integrations/pcap_analyzers (#2276)

Bumps [gunicorn](https://github.com/benoitc/gunicorn) from 20.1.0 to 22.0.0.
- [Release notes](https://github.com/benoitc/gunicorn/releases)
- [Commits](benoitc/gunicorn@20.1.0...22.0.0)

---
updated-dependencies:
- dependency-name: gunicorn
  dependency-type: direct:production
...

Signed-off-by: 0ssigeno <s.berni@certego.net>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Shivam Purohit <shivampurohit900@gmail.com>
Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>
Co-authored-by: Daniele Rosetti <d.rosetti@certego.net>
Co-authored-by: 0ssigeno <s.berni@certego.net>
Co-authored-by: Martina Carella <m.carella@certego.net>
Co-authored-by: Daniele Rosetti <55402684+drosetti@users.noreply.github.com>
Co-authored-by: fgibertoni <152909479+fgibertoni@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>
Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>
Co-authored-by: Shivam Purohit <shivampurohit900@gmail.com>

* Bump gunicorn from 20.1.0 to 22.0.0 in /integrations/tor_analyzers (#2277)

Bumps [gunicorn](https://github.com/benoitc/gunicorn) from 20.1.0 to 22.0.0.
- [Release notes](https://github.com/benoitc/gunicorn/releases)
- [Commits](benoitc/gunicorn@20.1.0...22.0.0)

---
updated-dependencies:
- dependency-name: gunicorn
  dependency-type: direct:production
...

Signed-off-by: 0ssigeno <s.berni@certego.net>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Shivam Purohit <shivampurohit900@gmail.com>
Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>
Co-authored-by: Daniele Rosetti <d.rosetti@certego.net>
Co-authored-by: 0ssigeno <s.berni@certego.net>
Co-authored-by: Martina Carella <m.carella@certego.net>
Co-authored-by: Daniele Rosetti <55402684+drosetti@users.noreply.github.com>
Co-authored-by: fgibertoni <152909479+fgibertoni@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>
Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>
Co-authored-by: Shivam Purohit <shivampurohit900@gmail.com>

* Bump django-auth-ldap from 4.7.0 to 4.8.0 in /requirements (#2270)

Bumps [django-auth-ldap](https://github.com/django-auth-ldap/django-auth-ldap) from 4.7.0 to 4.8.0.
- [Release notes](https://github.com/django-auth-ldap/django-auth-ldap/releases)
- [Changelog](https://github.com/django-auth-ldap/django-auth-ldap/blob/master/docs/changes.rst)
- [Commits](django-auth-ldap/django-auth-ldap@4.7.0...4.8.0)

---
updated-dependencies:
- dependency-name: django-auth-ldap
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump gunicorn in /integrations/malware_tools_analyzers/requirements (#2275)

Bumps [gunicorn](https://github.com/benoitc/gunicorn) from 20.1.0 to 22.0.0.
- [Release notes](https://github.com/benoitc/gunicorn/releases)
- [Commits](benoitc/gunicorn@20.1.0...22.0.0)

---
updated-dependencies:
- dependency-name: gunicorn
  dependency-type: direct:production
...

Signed-off-by: 0ssigeno <s.berni@certego.net>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Shivam Purohit <shivampurohit900@gmail.com>
Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>
Co-authored-by: Daniele Rosetti <d.rosetti@certego.net>
Co-authored-by: 0ssigeno <s.berni@certego.net>
Co-authored-by: Martina Carella <m.carella@certego.net>
Co-authored-by: Daniele Rosetti <55402684+drosetti@users.noreply.github.com>
Co-authored-by: fgibertoni <152909479+fgibertoni@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>
Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>
Co-authored-by: Shivam Purohit <shivampurohit900@gmail.com>

* updated frontend dependencies

* Fix serializer

Signed-off-by: 0ssigeno <s.berni@certego.net>

* added linkedin button (#2299)

* Fixed tests and fixed maxmind update (#2298)

* added plugin info icon in raw data report (#2296)

* added plugin info icon

* fix test

* adjusted tests

* refactor pluginReportTables

* Change investigation default name (#2301)

* Change investigation default name

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Blake

Signed-off-by: 0ssigeno <s.berni@certego.net>

---------

Signed-off-by: 0ssigeno <s.berni@certego.net>

* adjusted old job removal

* Graph prevention with scan_mode check_previous_analysis (#2302)

* Graph prevention with scan_mode check_previous_analysis

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Wops

Signed-off-by: 0ssigeno <s.berni@certego.net>

---------

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fix + test for runtime config

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fixes

Signed-off-by: 0ssigeno <s.berni@certego.net>

* domain playbook adjusts (#2304)

* domain playbook adjusts

* black

* Added few Docstrings in authentication\views.py  (#2236)

* Added few Docstrings

* Updated with few changes.

* linter

---------

Signed-off-by: 0ssigeno <s.berni@certego.net>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Shivam Purohit <shivampurohit900@gmail.com>
Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>
Co-authored-by: Daniele Rosetti <d.rosetti@certego.net>
Co-authored-by: 0ssigeno <s.berni@certego.net>
Co-authored-by: Martina Carella <m.carella@certego.net>
Co-authored-by: Daniele Rosetti <55402684+drosetti@users.noreply.github.com>
Co-authored-by: fgibertoni <152909479+fgibertoni@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>
Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>
Co-authored-by: Shivam Purohit <shivampurohit900@gmail.com>
Co-authored-by: Your Name <you@example.com>

* fixes #1699 Permhash analyzer (#2258)

* added permhash analyzer and updated project-requirements.txt

* name change

* migrations

* changes

* update mimetypes and migration file

* update permhash

* fix migration issues

* raise AnalyzerRunException in perm_hash.py

* use mimetype instead of file extension

* added monkeypatch patches and changed permhash version from 0.1.4.2 to 0.1.4

* add permhash to free analyzers

* updated test_classes

 => added AndroidManifest.xml, manifest.json and sample.crx to
test_files.zip
 => added test cases for xml, json and crx in
tests/api_app/analyzers_manager/test_classes.py

* updated perm_hash.py

* added permhash to both free analyzers and static analyzers

* updated Usage.md

* updated migrations

* fix

* migration

* migrations

* migrations

---------

Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>

* Bump pywatchman from 1.4.1 to 2.0.0 in /requirements (#2169)

Bumps [pywatchman](https://github.com/facebook/watchman) from 1.4.1 to 2.0.0.
- [Release notes](https://github.com/facebook/watchman/releases)
- [Commits](https://github.com/facebook/watchman/commits/v2.0)

---
updated-dependencies:
- dependency-name: pywatchman
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Added traefik switch to script (#2307)

* Removed depends on

Signed-off-by: 0ssigeno <s.berni@certego.net>

* Fixes Blint#2232 (#2257)

* blint

* report directory, code quality, docs

adjusts to default domain reputation visualizer + analyzers urls and abstractmethods (#2250)

* little adjusts

* adjust

* refactored base_url in url to enable healthchecks

* adjust

* added update abstract method

* added logging of intel_owl package

adjusted containers dependencies

Fix

Signed-off-by: 0ssigeno <s.berni@certego.net>

report directory, code quality, docs

adjusts to default domain reputation visualizer + analyzers urls and abstractmethods (#2250)

* little adjusts

* adjust

* refactored base_url in url to enable healthchecks

* adjust

* added update abstract method

* added logging of intel_owl package

adjusted containers dependencies

Fix

Signed-off-by: 0ssigeno <s.berni@certego.net>

RED tlp

* dict response, log remove

* cleanup

* migratiuons

* migrations

* code quality

* supportfiles

* updated blint

* updated python in ci

* repo_downloader_fix

* codeql

* fix migrations

* fix migrations

* cleaned code

* cleaned code

* fix

* try fix repo downloader

* don't work

---------

Co-authored-by: g4ze <bhaiyajionline@gmail.com>
Co-authored-by: Matteo Lodi <30625432+mlodic@users.noreply.github.com>

* adjusted JobIsRunningFlow (#2300)

* adjusted JobIsRunningFlow

* refactor

* deepsource

* adjusted test + permission edge case

* adjusted Update view

---------

Signed-off-by: 0ssigeno <s.berni@certego.net>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Shivam Purohit <shivampurohit900@gmail.com>
Co-authored-by: 0ssigeno <s.berni@certego.net>
Co-authored-by: Moon Patel <moonpatel2003@gmail.com>
Co-authored-by: Daniele Rosetti <d.rosetti@certego.net>
Co-authored-by: Martina Carella <m.carella@certego.net>
Co-authored-by: Daniele Rosetti <55402684+drosetti@users.noreply.github.com>
Co-authored-by: fgibertoni <152909479+fgibertoni@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Simone Berni <simone.berni2@studio.unibo.it>
Co-authored-by: code-review-doctor[bot] <72320148+code-review-doctor[bot]@users.noreply.github.com>
Co-authored-by: Shivam Purohit <shivampurohit900@gmail.com>
Co-authored-by: Cristina Ascari <95929371+cristinaascari@users.noreply.github.com>
Co-authored-by: IP2Location <support@ip2location.com>
Co-authored-by: suryapavan1611 <160897639+suryapavan1611@users.noreply.github.com>
Co-authored-by: Your Name <you@example.com>
Co-authored-by: Nilay Gupta <102874321+g4ze@users.noreply.github.com>
Co-authored-by: g4ze <bhaiyajionline@gmail.com>
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.

[Analyzer] Permhash
2 participants