Code RoomRedis cache deserializes untrusted pickle
HardPrep Room Coding #1675

Redis cache deserializes untrusted pickle

Code reviewCode quality & reviewSenior–Staff~30 min

Review this Python caching layer that stores objects in Redis.

What a strong answer looks like

Separate real bugs from style. Rank issues by severity, point at the root cause rather than the symptom, and suggest a concrete fix, specific and kind.

0:00 of about 30 min
Mark a line and say what kind of problem it is.0 findings
1import pickle, redis
2r = redis.Redis()
3 
4def cache_set(key, obj):
5 r.set(key, pickle.dumps(obj))
6 
7def cache_get(key):
8 raw = r.get(key)
9 if raw is None:
10 return None
11 return pickle.loads(raw) # rehydrate
Which questions mattered is sealed until you submit. Telling you now would just be handing over the edge cases.