Live data from Hacker News

Ask HN: What's the best programming language to learn for security?

news.ycombinator.com

1–10 of 54 posts

Ask HN: What's the best programming language to learn for security?

#1
I'm talking about all these firms that specialise in security for companies. If I wanted to work at one of these, what programming language would I need to know?

I assume it would be something like C++, but I don't know.

On another note, how many programming languages (and what programming languages) do you think someone would need to know to have a successful career in that field?

Re: Ask HN: What's the best programming language to learn for security?

#3
its helpful to know the clients language of choice

i would say 75% of the time: asm/c/c++/sql are req languages. python may be as well, lots of exploits are written in python b/c its fast to write for...

if you dont got that ur gonna need or bonus to have: knowledge of exploit methods for bash/win/php/ruby/sql and other common languages

just my take on it, cheers

Re: Ask HN: What's the best programming language to learn for security?

#9
You very much have to be flexible. Most valuable would be C and assembly knowledge (and knowledge of the low level details of both is pretty much required).

As for tool writing, any high level language (perferably what your employer uses). For example, if MetaSploit is used knowledge of Perl/Ruby would be required.

Picking up multiple imperative languages is easy, though. Fortunately most languages in the field are imperative.

Depending on the software in question, knowledge of how virtual machines operate can also be useful.

Re: Ask HN: What's the best programming language to learn for security?

#10
First off, obviously there isn't really a clear black/white answer to this. Secondly even security is such a broad field that it really depends on your focus (a similar question could be what programming languages/technologies are the best for web development, where you'd get answers ranging from classic LAMP stack, to Node.js, python, RoR, Angular and many others, and it depends on whether you want to do front-end, back-end, both or whatever combination). So firstly I'd say it's important to pin-point what you are personally interested in; I'd say that if you want to be working on some "serious" exploits in widely used software, you are looking at C and Assembly, and C++. Obviously for web hacking, you'd be looking more at scripting languages, both in terms of their usages as the underlying technologies, as well as to automate those mundane repetitive tasks, so PHP, ASP, Perl, Python, Bash scripting etc. is something to look into. But you should also be well versed in sys-admin tasks, things like maintenance, event logging, filesystems and permissions... And lastly there is networking and all the issues and things associated with it, tcp/ip stack, routing and so much more.

The thing is, working in security isn't really dependant on the programming languages you know, either what will matter is your specialization (if you have any), or the overall skillset that you can offer to the company (if you can secure a web application on a shared host, but don't do anything about file permissions and other settings on the server, either someone else needs to do it, or the security of the webapp is pretty useless); be aware that you will be (or should be) learning something all the time, again depending on your interests, and at the same time you have to stay on top of news in research and exploits, so in a way it's really tough but also very interesting.

Post reply on HN