Ask Slashdot: Do-It-Yourself Security Auditing Tools? 116
An anonymous reader writes "I'm a 'prosumer' website builder, have a few sites that are mainly hobbies, but I would like to know that they're at least fairly robust. I'm thinking of the equivalent of a 'dental clinic' — where someone interested in the white hat security field might be willing to take on an audit for the experience and to build a resume. Or, tools such as websites that let you put in a password and see how long it takes to crack it. Or sites where you can put in a URL and it gets poked and prodded by a number of different cracker tools and a 'score' is given. Ideally with suggestions on how to improve. Does anything like that exist? I'm not talking FBI/CIA level security, but just common-sense basics. I've tried to use techniques that improve security, but I don't know how well they work. And I've realized that in the ever growing, fast changing field of computers I'm not going to ever get the knowledge I need to do this myself. I know there are software suites that allow you to sniff and test things on your own, but I'm afraid it's overwhelmingly foreign to me and I just feel like I can't reliably do this myself. Any ideas?"
Anyone Compile A List? (Score:1)
Re: (Score:2)
I believe this questions really requires a list of possible attack vectors. Is a list like that even possible, or is it infinite.
The known vectors are finite.
Re: (Score:3)
Yes, the number equals 1: human.
Fix that attack vector and you won't have anything to worry about.
Re: (Score:2)
Good news is human/2 is finite unti human == infinte.
Re: (Score:3)
Not true at all.
While humans are the biggest attack surface, they are far from the only one.
My suggestions are Backtrack Linux & a copy of The Art of Deception by Kevin Mitnick.
Backtrack has some great security auditing tools, however you will still need to understand exploits to test for them. The Art of Deception gives real world examples of social engineering & suggestions on how to plug those gaping holes called humans.
Re: (Score:1)
And the unknown vectors are infinite.
Re: (Score:2)
You could try PWNPI (Score:4, Interesting)
This is a nifty suite of programs made for a lot of what you want that runs on a Raspberry Pi. If you don;t want to get a Pi you can look at the list of software and download then into your favorite Linux distro. Most (if not all) of these are open source.
http://pwnpi.sourceforge.net/ [sourceforge.net]
4chan (Score:1)
Re:Post your password here (Score:4, Funny)
Re: (Score:2, Funny)
hunter2
Whats the point? (Score:5, Informative)
What's the point of "basic" security check?
But a quick search for metasploit should get you going, perhaps add a Nessus scan and go watch some Def Con presentations on SQL injection and penetration testing http://www.youtube.com/user/ChRiStIaAn008 [youtube.com] is a good place to start.
Re: (Score:1)
Re: (Score:2)
Also note mod_security is also available for Nginx and IIS.
OpenVAS (Score:1)
Nessus is the big cheese with the big price but OpenVAS is the way to go. Do have a machine with plenty of power.
Hosting company (Score:3)
C'mon (Score:1)
You have no idea what you're doing, you have no idea what you WANT to do, and you have no idea what you need to do in order to get the knowledge to do whatever that is.
Please, re-think your idea.
Web vulnerability scanner list (Score:3, Informative)
There are plenty of web (vulnerability scanners) that you could use, some requiring no experience and point and click, otherwise will require prior knowledge.
http://sectools.org/tag/web-scanners/
Security auditing is mostly about documentation (Score:1)
Hate to tell you, but security auditing is mostly about documentation. Checking that the right documents are in place and have been updated, verifying office procedures, physical security, etc. Technical tests are mostly about checking for the status and presence of files or configurations, not about probing networks or white hat hacking. There is a vaild business opportunity in pen testing, which is just one component of auditing, and is not even needed for every type of audit.
Re:Security auditing is mostly about documentation (Score:5, Insightful)
Hate to tell you, but security auditing is mostly about documentation. Checking that the right documents are in place and have been updated, verifying office procedures, physical security, etc. Technical tests are mostly about checking for the status and presence of files or configurations, not about probing networks or white hat hacking. There is a vaild business opportunity in pen testing, which is just one component of auditing, and is not even needed for every type of audit.
This. While it would seem logical to put a round of known vulnerabilities into a scanner (like a Virus Scanner works) in the real world this is extremely tricky. Vulnerabilities that come about from combinations of different packages and different configurations interacting are very hard to systematically detect, and even if you do detect them they are just one piece in the huge puzzle that is information security.
Case in point, I often get audit reports from "creditable" security professionals that there are a set of vulnerabilities in XYZ product, specific to "somesoft operating system 9.0", when in fact the product in question uses no such operating system (or even one similar to it) so the "audit" was obviously just a set of false-positives from a scanner tool. Scanner tools are just that, a TOOL, they are not even close to a true security solution that would produce a meaningful audit; that can only come (at least in this day and age) from a combination of tools and a *lot* of expertise.
Use standard software and keep it up to date (Score:5, Insightful)
Re: (Score:2)
It is tough, but not impossible. SAINT, Nessus, OpenVAS, Nikto and others will generate a report with CVE info that points to articles providing some guidance.
Read ArsTechnica (Score:2, Informative)
Two articles on arstechnica recently covered booters (paid services to attack your sites using a large set of vectors), and password cracking for script kiddies.
Here they are :
http://arstechnica.com/security/2013/03/details-on-the-denial-of-service-attack-that-targeted-ars-technica/
http://arstechnica.com/security/2013/03/how-i-became-a-password-cracker/
That should give you a first hint...
OWASP (Score:3, Informative)
Posting as AC because for some annoying reason Slashdot won't let me log ion right now...
https://www.owasp.org/index.php/Web_Application_Penetration_Testing
You probably already took the test (Score:2, Interesting)
Whether you wanted to or not, just by having a site, you've already asked the whole Internet to check it out. One way to find out if you've done things right, is to look for evidence that you've done things wrong. And there's a little tip I learned...
Grep your logs for your table names.
If you have an injection hole, for example, then automated spiders have already found it and exploited it, and (so far) they don't obfuscate or even escape/character-encode their requests, so you'll plainly see their injected
You need to sit down and read a bit (Score:2)
And I gather you (the OP) is getting worried; the problem is that you're not paranoid enough.
Do you, for example, validate your code using the HTML validator from w3c?
You also need to learn to run tools. I mean, online website tools are nice... as long as you're *SURE* that they've not been hacked, nor are they actually crackers trying to lure you in.
Determining what tools to use is another issue: are you writing for Windows or *Nix? There's a lot more free tools on the latter, but you will have to learn mo
Re: (Score:2)
Go check out sectools.org (Score:3)
Sectools.org has a comprehensive list of tools with explanations of what each one does. Look at the web tools and the vulnerability scanners and you will find something you feel comfortable using. Most of the other tools mentioned so far can be found there. Also, the Open Web Applicaiton Security project (owasp.org) has some good information on secure app development.
good luck.
Be different (Score:3)
If yours isn't a mass-market, mass-profit, hugely-popular site, you don't need to secure it. You just need to be different enough that the standard chinese attack vectors looking for standard run-of-the-mill popular web-site building packages don't find any.
Trust me, no one's going to your tiny site and trying to find the holes -- no matter how big they are.
We secure bank vaults with big heavy locks. Your house with a tiny mediocre lock. Your car door with a tinnier very crappy lock. Your car trunk with a down-right shitty lock.
Just be different. It'll get you through the 99% that you care about.
Re: (Score:1)
That's silly... small unsecured servers are targeted because they are easy prey and can relay spam. Just because you don't have valuable customer data to exploit does not take you off the target list.
Re: (Score:2)
No one's going to find this small unsecured server, and figure out how to hack some mystery unknown customer software. It's just not worth the trouble.
Re: (Score:2)
Read harder. I said "different". You said "standard". Different is the opposite of standard. And that was my entire point, advice, recommendation, and successful strategy for the last twenty years of my business.
Re: (Score:2)
China and Russia thank you for your small unsecured server that is now a full-blown botnet C&C server. Hope your customer doesn't mind their unknown software going slow.
Re: (Score:2)
Umm, wrong-o. I've been in business for twenty years. Over the course of two decades, my servers have been down due to security-related attacks for six hours spread out over the two decades. You'll find that to be a very successful result across the industry. I profit, my clients profit.
It's worked and is working for me.
How's your business doing?
Re: (Score:2)
Yeah, realism, reality, experience, ROI, cost-benefit, risk-reward, and statistics are a straw-man argument. Good one.
You work your way. I'll work mine. I'm happy with mine. If you're happy with yours, so much the better. A few observations though.
a) you don't put your name alongside your argument. So neither is worth spit.
b) The original poster asked for advice. I gave mine. I've not asked for your advice. I don't want it. And yet, you've decided not only to advise me, but to do so with vulgariti
Re: (Score:1)
The bots don't care how popular your site is. All they want an exploitable vulnerability on a host with reasonable bandwidth. You'll be scanned within minutes of going online. And exploited minutes later [sans.edu] if you have a common vulnerability.
Re: (Score:2)
I think you missed my entire statement. Which is odd, because it was in both the title and the body.
Different != Common. Make a note.
Re: (Score:2)
Correct on all three. But you've missed two:
Different != worth exploiting compared to the myriad others
Secure != non-exploitable, ethan hunt can break into anything
Secure != free, cost-effective, profitable, nor worth doing most of the time.
I gave you that last one free of charge. Most people forget that secure has a cost, often greater than repairing the hack, or even just tolerating the hack. Ooh, someone changed my home page. Watch me change it back. For most businesses, that's not a problem worth av
Re: (Score:2)
Hmm, trolling. I used my name; you didn't. My post was modded up, yours was modded down to zero -- as was the post to which you replied. Hmm, trolling.
Re: (Score:3)
I'm not a proponent of security by obscurity. I'm a proponent of not ignoring something that works. So as a result, obscurity is a useful tool, alongside other tools, when it comes to security.
So I start like so.
First, Ethan Hunt can break into anything. So no matter what I do, I won't be secure.
Second, there's an amount of security that costs more for me to implement than the money I'd lose from the attacks. So that's my upper bound.
Third, there's an amount of attack that costs me a significant amount
Re: (Score:2)
If that unimportant unsecured box has any value to you at all, I would suggest a test. If it's running a variant of UNIX, get and install iptables and csf/lfd. Let it run for a day (or a week- even better). See how many logins and hack attempts it registers. If the answer is none, then you win. Otherwise, you are under attack and didnt know better.
I run what would be considered an unimportant out of the way box myself. In fact, I've gotten scans and login attempts from all over the planet. This is fo
Re: (Score:2)
All the time my friend. Thousands each and every day. I can't even begin to count the number of dumb ones to /phpmyadmin.
But being different means that there's simply nothing there to attack. All standard things just don't show up. So I get probed, and not attacked.
Sure, it costs me loads of bandwidth, and my logs are a disgusting mess. And sometimes the number of connections alone causes a problem -- which is a part of those six hours -- so I get to block one ip, or change a port, mid-attack. That hap
Re: (Score:2)
If it was a good attack, you didn't even know you were pwned.
I've seen good attacks... and the only reason they were noticed at all is because they had layered security and some small file changes weren't covered up and someone with time on their hands reading the reports. The client reponse was to ask to stop reading the reports because it was more expensive to repond to the attack which caused other people a loss than to ignore it.
So any time I see a jackass suggesting security isn't something you need to
Re: (Score:2)
But, that's exactly the point. If I don't notice it, then it didn't hurt me. Why would I spend one penny or one minute trying to respond to something that has zero impact on me?
Re: (Score:2)
Because by that logic, you're ok with me drugging you in your sleep, sitting around in your livingroom watching the TV and watching your kids sleep, then leaving before you wake up.
And to extend the analogy to the "damage to others", I send your kids a video after your death of their toothbrushes being used to polish your anus.
Yes it's a stupid analogy, but yours is a stupid argument.
Re: (Score:2)
I won't let you cross the line between the safety and security of my life, and that of my business.
My life is my own, for my own pleasure and desires.
My business isn't for anything but profit. You improve my life by safe-guarding my sleep and my couch. You cost me profits when you add security efforts to my business. The sole purpose of my business is for me to profit. Taking that away isn't improving the business, it isn't even limiting the business; it's completely eliminating the purpose of the busin
Re: (Score:2)
And you might want to put your name next to your argument. Otherwise, you aren't exactly showing much confidence in your statement.
Re: (Score:2)
First of all, go back to grade six english and learn subject-verb agreement. "fewer defenses" or "less defence". Never "less defenses". The plural "defenses" is a declaration of quanta, not amount.
Second, and something I've said to others: Different != typical. Different means that a hacker would need to find you specifically, look at you specifically, and craft a hack specifically. It's very easy for them to do, and is not something that they will do.
Re: (Score:2)
Hey, it's worked for me. It's worked for me for two decades now. It works for my clients too -- also for two decades. We're all happy. We're all making money. We're all not worried. And over the course of the last twenty years, my servers have been what we'll all call non-responsive to client requests due to hackers for a total of six hours spread out over 15 separate occasions. That basically works out to once a year it takes thirty minutes to block the attack.
Thirty minutes of down-time, once per y
Re: (Score:2)
Actually, I was thinking the same thing, but the car door can be broken into without accessing the locking mechanism at all -- like when you call for help having locked your keys in your car. They don't pick the lock, they simply pry the door or window.
But yeah, it all comes down to making one link in the chain stronger than the others -- does you no good. The same is true on the web-sites. Unless you're going to secure each and every possible attack vector -- and keep on top of that as new ones appear -
Re: (Score:3)
Three big things you can do to de-target-ify yourself:
* use SQL prepared statements, never concatenate strings
* never touch the user's real password... key-stretch it client-side using PBKDF2, and only send the salt & hash to your server. People use the same password everywhere, and attackers know it. If you don't KNOW the passwords of your own users, your site is a lot less interesting to attackers.
* block outbound traffic on port 25.
ok, I lied... here are a few more...
* Don't allow connections to your
Kali Linux (Score:5, Informative)
This is a full-blown Linux distro with all the security tools you are ever likely to need. Metasploit? It's there. Nessus? It's there. The actual list of tools is huge.
Kali won't teach you everything about using the tools (though there are good instructions available online). But it does offer all you could want in one package.
Re: (Score:2)
I didn't know BT was renamed. I thought it had just petered out. Thanks for that.
I thought it was more of a forensic distro, though.
Re: (Score:2)
Re: (Score:2)
If you want to do it yourself, yes, this is the way to go about it. The OP is an idiot to think that any site on the internet that 'asks permission before hacking your site, just give us the URL or code'' is not going to turn around an sell that information afterwards. Either hire professionals, or DIY.
I keep a copy of BT 5 (i hadn't seen the move to Kali Linux) in a virtual machine. Not the fastest scanner out there, but a small networked box in my house gets the same copy of code installed on it as my web
Re: (Score:2)
http://www.kali.org/official-documentation/ [kali.org]
It's a link on the top of the home page. I bet you couldn't find your arse with both hands and a mirror.
OWASP (Score:1)
Try the OWASP website: https://www.owasp.org/index.php/Main_Page. They have a lot of free tools for doing security testing of websites.
Consider an easy to use commercial webapp scanner (Score:1)
Sorry, no (Score:2)
The only things tools can tell you is whether another person running the same tool could get in. For anything else they are pretty worthless. Also, the FBI/CIA does not have a clue about IT security. If you must name a TLA, make it at least the NSA.
Use SDHC memory in a card reader-writer, set lock (Score:2)
No matter what an intruder tries, if you put your operating system on read-only media, intrusion becomes limited.
Of course, installation and changes become more difficult because you must reboot with your media set to read-write, then reboot again to read-only. SDHC memory works well for this, since it has a read-write switch like the old floppy drives. Put the memory in a
USB "card reader" for SD
(microSD doesn't appear to have a read-write switch).
You can insert the SDHC in something
Re: (Score:2)
The SDHC read-write tab? It's more like a vague suggestion than a lock. I've yet to find a card reader that will actually refuse to write to a "write-protected" card.
Re: (Score:1)
The operating system often seems to write to a lock-switched memory card, and "ls" indicates it has.
But removing the card reveals data has not been written.
I'll keep an eye out for actually writing when actually lock-switched.
Re: (Score:1)
I have now actually checked this.
I switched an SDHC to read-only, wrote a file to it on Linux, took the SDHC to another computer, and the file was indeed written.
So, the SDHC lock is no guarantee against writing, and is apparently useless.
I stand corrected, and thank Carnildo for ending my misadventure.
I prefer using read-only hardware to "chattr -i" immutability plus a Linux kernel enforcing this,
since the software approach is cumbersome and changes files' ctime attribute.
What is available?
The following in
Don't forget to test your FTP (or SFTP) access... (Score:2)
You can use this free scanner to test your FTP or SFTP access.
http://www.filetransferconsulting.com/low-and-slow-ftp-scanner/ [filetransf...ulting.com]
Set this utility up with about four garbage usernames, then your actual admin credentials in the username list, and put four junk passwords before your admin password in the password list. Then run the utility with one-second intervals. If your FTP server (or SFTP service) is set up well, your IP (and possibly your username) should be locked out before the utility gets to your legit
Some other things to think about (Score:2)
You may want to see if any of your local colleges have computer security tracks. You may be able to do an Internship, or someone may
be available to just do it for experience. YMMV
While you are doing these scans, please note, you may clog up your pipes to the Internet. If you are using hosted services
DO NOT RUN SCANS WITHOUT NOTIFIYING THE HOSTING SERVICE.
There are many sites with CVE information, Secunia is ok, search for applications you care about.
http://secunia.com/community/advisories/historic/ [secunia.com]
Be carefu
CloudFlare + Nessus Home Version + Hardened SSH (Score:3)
I'd recommend you proxy your web site through CloudFlare -- www.cloudflare.com -- by having them handle your DNS. You can read more about them at their web site -- I'm not affiliated with them in any way. They offer a free proxy service that acts as a web application firewall and will do a good job at blocking hack attempts.
From there, you should restrict your webserver's firewall to only allow traffic from CloudFlare's known IPs, so people cannot directly hit your webserver.
If Linux, install fail2ban on the SSH daemon + require SSH-key based access (no passwords!)
Finally, get a copy of the home version of Nessus from Tenable and use that to scan your server. It's interface is relatively easy to use, and if you hit your webserver IPs every couple months with this, in addition to using CloudFlare and hardening your SSH daemon, you should be in good shape and not have to worry about silly hacks.
Re: (Score:2)
I wouldn't recommend CloudFlare. Their engineers are fucking morons, and their service doesn't actually block attacks.
Re: (Score:2)
+ revoke old / unused keys.
+ encrypt the computers that have keys (truecrypt, luks) in case of theft.
Acunetix (Score:1)
Learn the problems, then tools help (Score:2)
If you don't understand the application-layer issues which might be present in your programs, then you won't necessarily understand what the tools (whichever) are trying to tell you. Read and learn, grasshopper. You can get a ton of info from OWASP (http://owasp.org) for free, including some issue-specific "cheat sheet" pages. Next, buy the Web Application Hacker's Handbook. Really, do it now, or at least after you've read the OWASP stuff. It's in dead-tree and e-book versions, now second edition.
Tool-wise,
Be safe: Set up a little security lab (Score:2)
If you are going to get into active testing, then I think professional ethics demand you take precautions to avoid harming other users or their systems, even (or especially) by mistake.
If you have two computers, then set up a little testing lab for yourself. Take both machines off the Net but put them on the same LAN (preferably a wired LAN but wireless will do). Set up one box as the target with a Web server and the site of your design. Use the other to run your attacks, Kali Linux or whatever.
The reason t
More popular DIY titles: (Score:2)
"Home Heart Surgery"
"Roll Yer Own O.S."
"Kernel and Driver Programming for Dummies"
Security... (Score:1)
A lot of this conversation has been about remote security scans, but once you find a vulnerability, how do you remediate it? How do you maintain your security posture, and continue auditing your hosts on a regular bases? To what standard?
The National Institute of Standards & Technology provides a lot of help to those attempting to implement security standards.
First is the Security Content Automation Protocol (SCAP) - scap.nist.gov [nist.gov]. This defines how you manage, measure and evaluate vulnerabilities.
Sec
Automation (Score:1)
I would bump Kali Linux as the true DIY solution.
-OR-
You could just leave it up to someone else and have someone to blame. These guys would make a good scapegoat:
http://sitecheck.sucuri.net/scanner/ [sucuri.net]
I have actually used their scanner to find a backdoor in a common PHP script that shall remain nameless. They did report exactly where the vulnerable file was. After I deleted the file they told me the site was secure. Simple.
Not really DIY and I wouldn't trust anyone 100% but if you pay for a service you have do
Re: (Score:2, Funny)
Completely OT, but I've got Karma to burn
The last line of the first verse should read "You're a pal and a confidant". None of the Golden Girls went into space, though I'm sure they thought about sending Sophia there.
Re: (Score:2)
tl;dr: OMGMYEYES!!!
Srsly, I'm a security geek and I'm laughing at the copypasta quantity you just put in there. For a guy who admits he doesn't know security. For a guy who admits he'll never likely know it.
Re: (Score:1)
CSIS: 20 Critical Security Controls Version 4.1
http://www.sans.org/critical-security-controls/?utm_campaign=resources&utm_source=featured&utm_medium=web&utm_content=critical_controls [sans.org]