6 ms·
Hmm, all these eval() calls using data from cookies[0]... is this vulnerable to remote code execution? I think those eval() calls should be json.loads(). [0] h
by anglebracket 13y ago
Hmm, all these eval() calls using data from cookies[0]... is this vulnerable to remote code execution? I think those eval() calls should be json.loads().
[0] https://github.com/k3oni/pydash/blob/1317771275aa118a40df1ec912f86cd6a4f351a4/usage/views.py#L291 https://github.com/k3oni/pydash/blob/1317771275aa118a40df1ec...
- k3oni 13y agoThose evals() are valid only if user is authenticated, if there is no authentication then no eval() will be performed on the cookies.
- anglebracket 13y agoTrue, but just because you trust someone to access the dashboard doesn't mean you trust them to execute code on your server. There are other things to consider as well, like MITM attacks, and that an XSS hole would let the attacker set their own cookies. The data in the cookies is just JSON, right? If json.loads() would work here you should switch to that instead.
- k3oni 13y agoGood point there, i'll look into limiting the eval(). I would hope that people won't give access to everyone to the dashboard, wasn't really build for that, or at least that wasn't my initial idea.
- hegga 13y agodoesn't this get even worse since the python server is run by root?