Skip to content

Commit 5049080

Browse files
author
Till Brehm
committed
Implemented: FS#3707 - apps_instance_setting database storing details in plain text
1 parent d7927ad commit 5049080

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

server/mods-available/monitor_core_module.inc.php

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@ private function _doMonitor() {
121121
$this->_monitorFail2ban();
122122
$this->_monitorIPTables();
123123
$this->_monitorSysLog();
124+
$this->_cleanupAPS();
124125
}
125126

126127
private function _monitorEmailQuota() {
@@ -844,6 +845,22 @@ private function _delOldRecords($type, $serverId) {
844845
' server_id = ' . $serverId;
845846
$app->dbmaster->query($sql);
846847
}
848+
849+
private function _cleanupAPS() {
850+
global $app, $conf;
851+
852+
// run this only on the master
853+
if($conf['server_id'] == 1) {
854+
$records = $app->db->queryAllRecords("SELECT s.instance_id, s.name, s.value FROM `aps_instances_settings` as s INNER JOIN `aps_instances` as i ON (i.id = s.instance_id) WHERE s.value != '' AND s.name IN ('main_database_password', 'admin_password') AND i.instance_status > 1");
855+
if(is_array($records)) {
856+
foreach($records as $rec) {
857+
$tmp = $app->db->queryOneRecord("SELECT id FROM aps_instances_settings WHERE instance_id = '".$app->db->quote($rec['instance_id'])."' AND name = '".$app->db->quote($rec['name'])."'");
858+
$app->db->datalogUpdate('aps_instances_settings', "value = ''", 'id', $tmp['id']);
859+
}
860+
}
861+
}
862+
863+
}
847864

848865
}
849866

0 commit comments

Comments
 (0)