Hashing scheme used for pseudo anonymization security concerns

Hash length extension attack

The hashing method used in lib/gitlab/experiment/configuration.rb which is utilized to provide pseudo anonymization for PII logged in experiments is vulnerable to length extension attacks.

Even though this issue has very limited practical attack potential the overall strategy to pseudo anonymize input data should be revised.

Insufficient brute force protection

The used MD5 hashing scheme can be easily brute forced with the knowledge of the seed value. In order to mitigate such attack a better suited hashing algorithm should be used. Suitable might be for instance bcrypt with a high cost factor to mitigate potential brute force and rainbow table attacks.

cc: @ankelly as stable counterpart

Edited by Joern Schneeweisz