diff --git a/PyMISP b/PyMISP index cc6391233..190f82923 160000 --- a/PyMISP +++ b/PyMISP @@ -1 +1 @@ -Subproject commit cc6391233c01362a1b4b483c4ea8e67f306e3459 +Subproject commit 190f82923687cebaf06138724e7c03239e529cb4 diff --git a/VERSION.json b/VERSION.json index dc4eee433..9dd3f8718 100644 --- a/VERSION.json +++ b/VERSION.json @@ -1 +1 @@ -{"major":2, "minor":4, "hotfix":181} +{"major":2, "minor":4, "hotfix":182} diff --git a/app/Console/Command/AdminShell.php b/app/Console/Command/AdminShell.php index f953c3c9b..9930e5fa5 100644 --- a/app/Console/Command/AdminShell.php +++ b/app/Console/Command/AdminShell.php @@ -540,6 +540,10 @@ class AdminShell extends AppShell $whoami = ProcessTool::whoami(); if (in_array($whoami, ['httpd', 'www-data', 'apache', 'wwwrun', 'travis', 'www'], true) || $whoami === Configure::read('MISP.osuser')) { $this->out('Executing all updates to bring the database up to date with the current version.'); + $lock = $this->AdminSetting->find('first', array('conditions' => array('setting' => 'update_locked'))); + if (!empty($lock)) { + $this->AdminSetting->delete($lock['AdminSetting']['id']); + } $processId = empty($this->args[0]) ? false : $this->args[0]; $this->Server->runUpdates(true, false, $processId); $this->Server->cleanCacheFiles(); diff --git a/app/Controller/AppController.php b/app/Controller/AppController.php index 807da32cd..6eaaef426 100755 --- a/app/Controller/AppController.php +++ b/app/Controller/AppController.php @@ -34,7 +34,7 @@ class AppController extends Controller public $helpers = array('OrgImg', 'FontAwesome', 'UserName'); private $__queryVersion = '157'; - public $pyMispVersion = '2.4.179'; + public $pyMispVersion = '2.4.182'; public $phpmin = '7.2'; public $phprec = '7.4'; public $phptoonew = '8.0'; diff --git a/app/Model/Behavior/DefaultCorrelationBehavior.php b/app/Model/Behavior/DefaultCorrelationBehavior.php index a61271440..774ccd2af 100644 --- a/app/Model/Behavior/DefaultCorrelationBehavior.php +++ b/app/Model/Behavior/DefaultCorrelationBehavior.php @@ -626,6 +626,6 @@ class DefaultCorrelationBehavior extends ModelBehavior ]); $Model->deleteAll([ 'Correlation.value_id' => $valueIds - ]); + ], false); } } diff --git a/app/Model/Behavior/NoAclCorrelationBehavior.php b/app/Model/Behavior/NoAclCorrelationBehavior.php index b3855364c..0b79d729b 100644 --- a/app/Model/Behavior/NoAclCorrelationBehavior.php +++ b/app/Model/Behavior/NoAclCorrelationBehavior.php @@ -416,6 +416,6 @@ class NoAclCorrelationBehavior extends ModelBehavior ]); $Model->deleteAll([ 'Correlation.value_id' => $valueIds - ]); + ], false); } } diff --git a/app/Model/EventReport.php b/app/Model/EventReport.php index d301966a9..cdce53419 100644 --- a/app/Model/EventReport.php +++ b/app/Model/EventReport.php @@ -153,8 +153,12 @@ class EventReport extends AppModel { $errors = array(); if (!isset($report['EventReport']['uuid'])) { - $errors[] = __('Event Report doesn\'t have an UUID'); - return $errors; + if ($fromPull) { + $report['EventReport']['uuid'] = $attribute['uuid'] = CakeText::uuid(); + } else { + $errors[] = __('Event Report doesn\'t have an UUID'); + return $errors; + } } $report['EventReport']['event_id'] = $eventId; $existingReport = $this->find('first', array( diff --git a/app/View/Users/admin_edit.ctp b/app/View/Users/admin_edit.ctp index 1c7cc6243..e23b60996 100644 --- a/app/View/Users/admin_edit.ctp +++ b/app/View/Users/admin_edit.ctp @@ -52,6 +52,18 @@ echo $this->Form->input('confirm_password', array('type' => 'password', 'div' => array('class' => 'input password required'))); ?> + request->data['User']['totp']) ? true : false; + if ($isTotp) { + echo sprintf( + '
%s
', + __('Delete TOTP token'), + h($baseurl), + h($this->request->data['User']['id']), + __('Delete TOTP token') + ); + } + ?>
=3.0.1.1 mixbox>=1.0.5 plyara>=2.1.1 pydeep2>=0.5.1 -pymisp==2.4.179 +pymisp==2.4.182 python-magic>=0.4.27 pyzmq>=25.1.1 redis>=5.0.1