The entire project is publicly available at https://github.com/HackThisSite/HackThisSite, except for a few things that are kept in a private repository because of their general nature. You can also clone the repository and documentation with:
- Code: Select all
git clone git://github.com/HackThisSite/HackThisSite.git
And here are some of the big changes:
- HackThisSite will now be open sourced and actively maintained. This means we will have multiple branches of development, all of which are publicly contributable via GitHub, and the current branch on stable will be frequently pushed live.
- We're a hacking site. Why do we have subpar security pracitices? It's just silly. We have a PKI now, that allows you to secure your account to statistically unbreakable levels, or give yourself a security and convenience bonus, similar to using SSH. You can read more about that here: http://goo.gl/NhGRU (Also, check out the LDAP bullet below.)
- All user accounts are now managed in LDAP. Some stock reasons: It makes it easy to branch out auth to things like shells, or mail servers. LDAP also secures authentication information better than keeping accounts in the database.
- Hopefully staff will use things like the Short News section more frequently to keep all of you updated.
- User accounts aren't going to be imported automatically. In order to get your old account moved into the new format, you'll have to use the Account Reclaimation page. (Will be linked on the login page.)
Less important things:
- Instead of the old 1-10 rating system, articles and news now have Like/Dislike buttons.
- "Indefinite" sessions. JavaScript sends heart beats back to the server, keeping your session alive as long as you're on the site. Hopefully it's a bit less scary to draft forum posts and articles on the site now.
- Users can choose in their settings page if they want their session locked to the original IP or not. Note: There is no significant loss in security by doing this. However, it should still only be disabled in situations where it's the only way for you to get a stable connection.
- The activity that occurs on your account, including logins is logged and visible to you in your account settings.
Technologies used:
- Nginx (Webserver)
- PHP (Main programming language)
- Perl (Secondary programming language)
- Git (Version control)
- MongoDB (Main database)
- Redis (IPC and KV store)
- ElasticSearch (Search)
- OpenLDAP (Authentication)
However, we're missing a couple important things: missions and user feedback.
We're putting the majority of the old missions into a Legacy section to make room for a new style of missions. New missions are going to demonstrate one specific mistake in a field, and afterwards, explain the technical details of what the user did in case they didn't fully understand (or coding missions that just present a problem). However, we can't write a whole new batch of missions ourselves. We need everybody's help. There are so many people at HackThisSite and they're all interested in different things.
As for the latter, how are we doing?


