diff --git a/owasp-top10-2021-apps/a8/amarelo-designs/app/app.py b/owasp-top10-2021-apps/a8/amarelo-designs/app/app.py index 92e24231e..8189c68bf 100644 --- a/owasp-top10-2021-apps/a8/amarelo-designs/app/app.py +++ b/owasp-top10-2021-apps/a8/amarelo-designs/app/app.py @@ -4,6 +4,7 @@ import uuid import pickle import base64 +import json app = Flask(__name__) @@ -20,8 +21,8 @@ def login(): if username == "admin" and password == "admin": token = str(uuid.uuid4().hex) cookie = { "username":username, "admin":True, "sessionId":token } - pickle_resultado = pickle.dumps(cookie) - encodedSessionCookie = base64.b64encode(pickle_resultado) + cookie_json = json.dumps(cookie).encode('utf-8') + encodedSessionCookie = base64.b64encode(cookie_json).decode('ascii') resp = make_response(redirect("/user")) resp.set_cookie("sessionId", encodedSessionCookie) return resp @@ -37,7 +38,7 @@ def userInfo(): cookie = request.cookies.get("sessionId") if cookie == None: return "Não Autorizado!" - cookie = pickle.loads(base64.b64decode(cookie)) + cookie = json.loads(base64.b64decode(cookie).decode('utf-8')) return render_template('user.html')