diff --git a/CHANGELOG b/CHANGELOG index 2569add662..423b14d7fc 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,4 @@ +* Prevent read of user password hash (CVE-2016-1241) * Add database dump cache for tests * Remove unused tools: find_in_path, exec_command_pipe and mod10r * Implementation of drop_column for SQLite diff --git a/trytond/res/user.py b/trytond/res/user.py index 60bb938c32..898e54ef6a 100644 --- a/trytond/res/user.py +++ b/trytond/res/user.py @@ -232,6 +232,14 @@ class User(ModelSQL, ModelView): vals['menu'] = Action.get_action_id(vals['menu']) return vals + @classmethod + def read(cls, ids, fields_names=None): + result = super(User, cls).read(ids, fields_names=fields_names) + if not fields_names or 'password_hash' in fields_names: + for values in result: + values['password_hash'] = None + return result + @classmethod def create(cls, vlist): vlist = [cls._convert_vals(vals) for vals in vlist]