오늘의 보안 문제 #7
매일 새 문제가 나옵니다. 코드를 읽고 가장 심각한 보안 취약점을 고르세요.
로그인 상태를 쿠키에 저장했다가 다시 읽는 코드입니다. 가장 심각한 취약점은?
import base64, pickle
def save_session(resp, session: dict):
data = base64.b64encode(pickle.dumps(session)).decode()
resp.set_cookie("session", data)
def load_session(req) -> dict:
raw = req.cookies.get("session")
return pickle.loads(base64.b64decode(raw)) if raw else {}