diff --git a/.bumpversion.cfg b/.bumpversion.cfg index 42b0c1d83..4bb62d78c 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 2.4.18 +current_version = 2.4.19 commit = True tag = True parse = (?P\d+)\.(?P\d+)\.(?P\d+)(-(?P.*)-(?P\d+))? diff --git a/README.md b/README.md index 2883a7191..1d7e85ad4 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@

Incident Response Investigation System
- Current Version v2.4.18 + Current Version v2.4.19
Online Demonstration

@@ -52,7 +52,7 @@ git clone https://github.com/dfir-iris/iris-web.git cd iris-web # Checkout to the last tagged version -git checkout v2.4.18 +git checkout v2.4.19 # Copy the environment file cp .env.model .env diff --git a/docker-compose.yml b/docker-compose.yml index 1e3f01341..fa6723434 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -25,27 +25,27 @@ services: extends: file: docker-compose.base.yml service: db - image: ${DB_IMAGE_NAME:-ghcr.io/dfir-iris/iriswebapp_db}:${DB_IMAGE_TAG:-v2.4.18} + image: ${DB_IMAGE_NAME:-ghcr.io/dfir-iris/iriswebapp_db}:${DB_IMAGE_TAG:-v2.4.19} app: extends: file: docker-compose.base.yml service: app - image: ${APP_IMAGE_NAME:-ghcr.io/dfir-iris/iriswebapp_app}:${APP_IMAGE_TAG:-v2.4.18} + image: ${APP_IMAGE_NAME:-ghcr.io/dfir-iris/iriswebapp_app}:${APP_IMAGE_TAG:-v2.4.19} worker: extends: file: docker-compose.base.yml service: worker - image: ${APP_IMAGE_NAME:-ghcr.io/dfir-iris/iriswebapp_app}:${APP_IMAGE_TAG:-v2.4.18} + image: ${APP_IMAGE_NAME:-ghcr.io/dfir-iris/iriswebapp_app}:${APP_IMAGE_TAG:-v2.4.19} nginx: extends: file: docker-compose.base.yml service: nginx - image: ${NGINX_IMAGE_NAME:-ghcr.io/dfir-iris/iriswebapp_nginx}:${NGINX_IMAGE_TAG:-v2.4.18} + image: ${NGINX_IMAGE_NAME:-ghcr.io/dfir-iris/iriswebapp_nginx}:${NGINX_IMAGE_TAG:-v2.4.19} volumes: diff --git a/source/app/blueprints/dashboard/dashboard_routes.py b/source/app/blueprints/dashboard/dashboard_routes.py index 9f45c927a..31379d921 100644 --- a/source/app/blueprints/dashboard/dashboard_routes.py +++ b/source/app/blueprints/dashboard/dashboard_routes.py @@ -86,7 +86,7 @@ def logout(): try: logout_request = oidc_client.construct_EndSessionRequest(state=session["oidc_state"]) logout_url = logout_request.request(oidc_client.provider_info["end_session_endpoint"]) - track_activity("user '{}' has been logged-out".format(current_user.user), ctx_less=True, display_in_ui=False) + track_activity("user '{}' is being logged out".format(current_user.user), ctx_less=True, display_in_ui=False) logout_user() session.clear() return redirect(logout_url) @@ -100,8 +100,9 @@ def logout(): log.error(f"Error logging out: {e}") log.warning(f'Will continue to local logout') + track_activity("user '{}' is being logged out".format(current_user.user), ctx_less=True, display_in_ui=False) + logout_user() - track_activity("user '{}' has been logged-out".format(current_user.user), ctx_less=True, display_in_ui=False) session.clear() return redirect(not_authenticated_redirection_url('/')) diff --git a/source/app/configuration.py b/source/app/configuration.py index 6a65ac933..fd5d9be0f 100644 --- a/source/app/configuration.py +++ b/source/app/configuration.py @@ -264,7 +264,7 @@ class CeleryConfig: # --------- APP --------- class Config: # Handled by bumpversion - IRIS_VERSION = "v2.4.18" # DO NOT EDIT THIS LINE MANUALLY + IRIS_VERSION = "v2.4.19" # DO NOT EDIT THIS LINE MANUALLY if os.environ.get('IRIS_DEMO_VERSION') is not None and os.environ.get('IRIS_DEMO_VERSION') != 'None': IRIS_VERSION = os.environ.get('IRIS_DEMO_VERSION') @@ -289,7 +289,7 @@ class Config: IRIS_ADM_USERNAME = config.load('IRIS', 'ADM_USERNAME') IRIS_ADM_API_KEY = config.load('IRIS', 'ADM_API_KEY') - PERMANENT_SESSION_LIFETIME = timedelta(minutes=config.load('IRIS', 'SESSION_TIMEOUT', fallback=1440)) + PERMANENT_SESSION_LIFETIME = timedelta(minutes=int(config.load('IRIS', 'SESSION_TIMEOUT', fallback=1440))) SESSION_COOKIE_SAMESITE = 'Lax' SESSION_COOKIE_SECURE = True MFA_ENABLED = config.load('IRIS', 'MFA_ENABLED', fallback=False) == 'True' diff --git a/source/app/datamgmt/case/case_iocs_db.py b/source/app/datamgmt/case/case_iocs_db.py index e371eab79..8bedca96f 100644 --- a/source/app/datamgmt/case/case_iocs_db.py +++ b/source/app/datamgmt/case/case_iocs_db.py @@ -146,7 +146,7 @@ def get_detailed_iocs(caseid): IocLink.ioc_id == Ioc.ioc_id) ).join(IocLink.ioc) .join(Ioc.ioc_type) - .join(Ioc.tlp) + .outerjoin(Ioc.tlp) .order_by(IocType.type_name).all()) return detailed_iocs diff --git a/source/app/static/assets/js/iris/case.ioc.js b/source/app/static/assets/js/iris/case.ioc.js index ad4b5d0ec..cadc4aa14 100644 --- a/source/app/static/assets/js/iris/case.ioc.js +++ b/source/app/static/assets/js/iris/case.ioc.js @@ -433,8 +433,12 @@ $(document).ready(function(){ "data": "tlp_name", "render": function(data, type, row, meta) { if (type === 'display') { - data = sanitizeHTML(data); - data = 'tlp:' + data + ''; + if (data) { + data = sanitizeHTML(data); + data = 'tlp:' + data + ''; + } else { + return `unspecified` + } } return data; }