-  [JOIN IRC!]


[Return]
Posting mode: Reply
Name
Subject   (reply to 716)
Message
File
Password  (for post and file deletion)
¯\(°_O)/¯
  • Supported file types are: BMP, GIF, JPG, PNG
  • Maximum file size allowed is 10000 KB.
  • Images greater than 400x400 pixels will be thumbnailed.
  • Currently 317 unique user posts. View catalog

  • Blotter updated: 2015-09-02 Show/Hide Show All


File 141892605082.jpg - (92.01KB , 607x451 , lE4vl.jpg )
716 No. 716
So I have a program that I am super paranoid about other people even looking at. It is a web application I have written out in pseudo, I don't really want to go into details about what it would do or how because I am not even sure if it will really work, or if it is just me being crazy (it is nothing illegal, just potentially profitable and fucking awesome).

I just want to know how to secure my code and user info as well as is possible. What kinds of things do government agencies and large corporations do to protect their data, and what are the best options for someone who does not have a big corporate/government budget to work with? What about something free?

I am only familiar with rather basic things like how to prevent injection attacks and session hijacks, web programming 201 type stuff.

No idea how to protect something really valuable.

I can use whatever framework/language will be best, though I would prefer to avoid anything that would require the use of visual studio.

Bonus points for something that would work on an onion, all this Gawker media bullshit happening lately makes me want something that would make it difficult or impossible for my server to be physically seized or accessed by anyone else. Even though it is nothing illegal, I don't want it to be possible for criminals, lawyers, bureaucrats and well-rounded decent individual's to piss on my leg at all, ever.
>> No. 718
You arenˋt giving a lot of details here about your application. What is the ˋuser dataˋ that you are trying to protect? The best way to keep code private is to only use binaries and to use code obfuscation. Aside from that, you say itˋs a web application, so maybe do a web search on ˋweb application securityˋ.
>> No. 720
Any user data that doesn't need to be reproduced (eg passwords) use a secure hashing algorithm (bcrypt or pbkdf2). Anything you do need to reproduce (eg names, emails, credit card numbers) encrypt with a secure encryption algorithm (AES). Use libraries that already have these written and DO NOT right the algorithms yourself.

Securing code that is going to run in the browser is impossible. Anything that you wouldn't open source needs to run on your server and only send the results back to the client. Do not rely on anything coming from the client as being correct.

Minimize the number of places your app receives data. Test every input with good data, bad data, random garbage, malicious data, and if possible open source that code and ask for feedback from StackExchange.

As for the physical set up, do not store anything that you wouldn't make public anywhere but a server that you physically control. Keep it behind locked doors in a secure building. The USA is probably the best place to keep it unless you'll be running up against the law, in which case a Nordic country might be safer.

Do be safe against physical takedowns, you want a distributed system. Use something like AWS to get everything on a lot of servers. Ideally, you could run it on clients, like bittorrent or tor.

This advice is very contradictory. You have to make the tradeoffs about what kind of security you need and what is possible based on your application. A distributed system without identification works really well for bittorrent but would be awful for facebook. All-data encryption is great for the military, but overkill for an imageboard. Without knowing what you want to do, it's impossible to give any real advice.

If you are really going to make money off of this, pay an expert and give them an NDA. If you aren't able to invest in the idea, get venture capital after you make a prototype. And remember two things: you'll never be 100% secure, and an insecure product that exists is infinitely more valuable than a secure one that doesn't.


Delete post []
Password  
Report post
Reason