Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The "user" cookie contains a base64'd username, the JSON responses include an echoed User-Agent, and I can rotate the "roomids" parameter to retrieve message logs from arbitrary rooms. Does security matter for this app?


Sorry, it's not really meant to be a secure chat. It's catered to people who don't want to signup or install anything. Who just want to go to a link and start chatting.


Do you mean you can't have both?


I'm not sure what combination of features you'd want to give up in order to make the logs of a free web chat secure.

Still, it'd be worth putting up a notice somewhere that users can't expect privacy from this site.


store a random session id and store all the room data and all that shite on the server somewhere, not in a cookie. Also, use a random string of characters instead of a number for the room ids. That should take care of most of the problems that tptacek mentioned


Sometimes storing session data serverside is clunky, particularly when you have multiple servers; a classic, reasonable approach in that case is to MAC the contents of the cookie with a 256-bit random key, and then AES-CBC encrypt the cookie with that same key. But I agree, for this app, there's no reason there should be structured data in a cookie.

As for the room IDs --- randomizing them is a fine bit of rubber-chicken security. I think it's a good idea. But the right solution is to allow users to erase the chat logs, and to verify that users have access to a given room before dumping all messages starting at message ID 0.


You should consider the ability to embed this as part of a website.




Consider applying for YC's Winter 2027 batch! Applications are open till November 2.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: