The Twenty Most Critical Internet Security Holes 250
Ant writes: "A little over a year ago, the SANS Institute and the
National Infrastructure Protection Center (NIPC)
released a document summarizing the Ten Most
Critical Internet Security Vulnerabilities. Thousands of
organizations used that list to prioritize their efforts so
they could close the most dangerous holes first. This
new list, released on October 1, 2001, updates and
expands the Top Ten list. With this new release, we
have increased the list to the Top Twenty
vulnerabilities, and we have segmented it into three
categories: General Vulnerabilities, Windows
Vulnerabilities, and Unix Vulnerabilities."
#21 (Score:5, Funny)
Re:#21 (Score:3, Funny)
Google cache mirror (Score:5, Funny)
http://www.google.com/search?q=cache:dbJlh35mihk:
Remember, check those links, you don't want to be goatse'd....
Re:Google cache mirror (Score:1)
Google cache security hole? (Score:1, Insightful)
Re:Google cache mirror (Score:2)
Re:Google cache mirror (Score:2)
Out of action! (Score:1)
Google archive here [google.com].
Does anyone find it scary... (Score:4, Insightful)
Haven't we learned anything?
O.K. So some of them (no/weak passwords) are user related, but so many of them are admin related (bind vulnerabilities, IIS RDS vulnerabilities)
Don't any admins care about these?
Of course, inside a company network some of these problems can be ignored if that is the decision. R commands are useful, but I wouldn't want people using them across the internet to my machines... But at the very least firewall... Please.
Z.
Re:Does anyone find it scary... (Score:1)
It is so sad.
Re:Does anyone find it scary... (Score:2)
The use of a single upper case or symbol character in a password does not increase the randomness of the password by very much in practice. Most users simply add a number at the beginning or end of a word. The cost of a dictionary attack goes up a bit, but it still ain't very secure.
The only way to make passwords secure is to severly limit the scope of brute force attack. Partitioning the password verification database into two parts such that both have to be compromised before the attacker can start a brute force attack.
Re:Does anyone find it scary... (Score:1)
Myself, I've moved from sendmail to qmail and from BIND to djbdns. Yes, the license isn't "Open Source" the way distributions would like it to be, but it certainly is for me, the User.
IIS, is that the Insecure Internet Server I keep hearing about?
:)
Re:Does anyone find it scary... (Score:2, Interesting)
well - in theory admin problems should be the only holes. the software should be able to be configured in a manner that is 'completely secure' (as far as anything can be). Programs shouldn't be insecure because of programming faults - only insecure becasue they're not configured properly.
speaking of security problems - has anyone thought of/made a version of code red/etc that goes around and downloads the security patches and the resends itself?
-shpoffo
Re:Does anyone find it scary... (Score:1)
people are your number 1 asset. (Score:5, Informative)
21. Hiring admin's with no clue about security
Good Points, But Nothing Really New (Score:2, Insightful)
As far as the *nix vulnerabilities, I think that a large majority of Slashdot readers could name off NFS, Bind, Sendmail, rlogin/rsh as critical (and many have already disabled / blocked those services).
Just my $0.02
Ed
Re:Good Points, But Nothing Really New (Score:1)
Re:Good Points, But Nothing Really New (Score:2, Interesting)
Something interesting comes out of this analysis:
-General problems remain present with years. Negligence from the users, programmer and administrators are the cause of all the security problems.
-Unix and Windows problems have basically the same roots: programming errors (buffer overflow, bad input validation) and inadequate trust.
Not mentioned in this article:
-Windows users are less computer-literate than Unix users. This is the major why so much problems occur on Windows (virus, worms, executable mail attachments, etc...).
System security is a very pragmatic issue. Some relatively well-known pratices will increase a lot the security of a network/system. There is always a hole somewhere but removing the well-known ones will make a huge difference.
Re:Good Points, But Nothing Really New (Score:3, Insightful)
Re:Good Points, But Nothing Really New (Score:3, Interesting)
Too many distros want to make you do all of your sysadmining from DistroConf2. You don't tune your automobile engine from your dashboard, and you don't secure your system from a GUI.
If and when I can read the list... (Score:2)
Including theirs.
OT I know ! (Score:1)
You forgot about this one (Score:5, Funny)
Re:You forgot about this one (Score:2, Funny)
Or this one [goatse.cx]
(relax, i didn't actually link it)
Summary (Score:3, Funny)
Government set software standards (Score:5, Interesting)
Re:Government set software standards (Score:2)
Presumably government standards would come with either a carrot or a stick. A typical carrot might be, the feds will only buy software which has been certified to an appropriate level. If the certification process costs $100K, who's going to pay the bill to get a particular software package tested? If IBM gets kernel version 2.4.3 certified, what happens with 2.4.4? A typical stick is the threat of serious liability for damage caused by security holes. Who will use a software package that doesn't have a large corporation behind it? Even a $1M liability judgement against me and I'm broke for the rest of my life and may still never pay it all off.
Here's the quick list... (Score:5, Informative)
"G" stands for "general holes"
"W" stands for "Windows holes"
"U" stands for "Unix holes"
G1 - Default installs of operating systems and applications
G2 - Accounts with No Passwords or Weak Passwords
G3 - Non-existent or Incomplete Backups
G4 - Large number of open ports
G5 - Not filtering packets for correct incoming and outgoing addresses
G6 - Non-existent or incomplete logging
G7 - Vulnerable CGI Programs
W1 - Unicode Vulnerability (Web Server Folder Traversal)
W2 - ISAPI Extension Buffer Overflows
W3 - IIS RDS exploit (Microsoft Remote Data Services)
W4 - NETBIOS - unprotected Windows networking shares
W5 - Information leakage via null session connections
W6 - Weak hashing in SAM (LM hash)
U1 - Buffer Overflows in RPC Services
U2 - Sendmail Vulnerabilities
U3 - Bind Weaknesses
U4 - R Commands (rlogin, rsh, rcp)
U5 - LPD (remote print protocol daemon)
U6 - sadmind and mountd
U7 - Default SNMP Strings
MadCow
Re:Here's the quick list... (Score:2)
Re:Here's the quick list... (Score:4, Interesting)
The UNIX holes listed are more fundamental in nature, requiring a significant re-development effort, and in some cases, redefining of protocols and fundamental tools.
Although the Windows "bugs" have been exploited more (and are easier to exploit in general), it'll take longer to address the issues in the UNIX list than those in the Windows list.
Sorry... I'm not a M$ advocate, but it does point out some significant issues that we need to overcome in the UNIX world, and quickly.
MadCow.
Re:Here's the quick list... (Score:2, Informative)
U2 - Sendmail Vulnerabilities
U3 - Bind Weaknesses
U4 - R Commands (rlogin, rsh, rcp)
U5 - LPD (remote print protocol daemon)
U6 ? sadmind and mountd
U1 - Implementation
U2 - Implementation
U3 - Implementation
U4 - Known bad for a while, replaced with S Commands
U5 - Implementation
U6 - Implementation
How exactly is Unix architectually bad compared to windows? Seems they're both full of bugs.
Re:Here's the quick list... (Score:2)
You forgot the gaping hole otherwise known as the Office document format, and the massive "treating symptoms" anti-virus market, which, last I checked, was primarily aimed at Microsoft's products.
Re:Here's the quick list... (Score:3, Informative)
You forgot the gaping hole otherwise known as the Office document format...
What the hell are you smoking??
Sendmail and bind can not be patched in such a way as to eventually become completely secure. The architecture underlying sendmail is not conducive to creating security. These packages should be taken out of use. There are alternatives to BIND and Sendmail: use djbdns and qmail. I haven't used djbdns, but given the quality and ease of configuration for qmail, I wouldn't hesitate to recommend anything from DJ Bernstein. See http://cr.yp.to/djbdns.html and http://cr.yp.to/qmail.html.
It's a pity about the licensing on DJB's stuff. Otherwise I would imagine that they would be included in more distributions...
Re:Here's the quick list... (Score:2)
The UNIX holes listed are more fundamental in nature, requiring a significant re-development effort, and in some cases, redefining of protocols and fundamental tools.
How the hell did this crap get moderated up? Most of the popular Unix expolits are buffer overflows, and most of the popular Windows expoliots are.... buffer overflows!
I wouldn't say that the r* tools are fundamental tools - every UNIX admin that hasn't been living under a rock has that stuff disabled on a public machine.
Accountability (Score:2, Interesting)
IIS is bad, but Unix admins that don't patch BIND and SendMail are worse. The IIS versions change every year or so and the patches come fast and furious, but SendMail and BIND have had stable versions and patches for a while.
Almost everyone reading this will admit that it takes a bit more expertise to get SendMail and BIND up and running than IIS (which is installed by default in Win2kSrv). Therefore the admins with more expertise should be held MORE accountable since they have greater responsibility by running BIND and SendMail.
Re:Here's the quick list... (Score:3, Insightful)
The very first thing you need for a secure network is a firewall. And not an opt-out firewall. An opt-in firewall. As follows:
Rule #1: block in all
Rule #2: block out all
There, now that the firewall is secure you can add rules to it to allow the specific things you need to flow into and out of the building.
Justin Dubs
Re:Here's the quick list... (Score:3, Interesting)
Congratulations! You've just conditioned the next wave of software developers to use port 80 for all their traffic because of your silly firewall rules. Don't believe me? Take a look at Microsoft's dotNet architecture sometime. Take a look at the IM protocols. Take a look at the new P2P protocols. What an excellent job you've done....
Attack the source of the problem: individual computers. People like you only cause more headaches for the rest of us in the long term.
Re:Here's the quick list... (Score:2)
Re:Here's the quick list... (Score:2)
No, it's also partly due to commercial imperatives. Your marketshare will be reduced if you make software which requires firewalls to be opened up (or at least fiddling with the configuration at the client end) in order to function. The logical conclusion is where every new service runs on port 80 outbound.
It's the trend of relying on firewalls which is truly lazy - and dangerously complacent.
Check out the RFC on IP-over-IP. It's hilarious.
Re:Here's the quick list... (Score:2)
OK, by your logic Microsoft SMB and RPC holes are also silly. That shortens their list considerably too. (W4/W5/W6).
However, in the real world, unfirewalled RPC servers have been a huge problem for both Unix and Windows. Basically, the idea of a "trusted LAN" should be obsolete in this day-and-age, and somebody needs to fix this crap.
Besides, it's been pointed out that the hackers outside of your firewall only want to deface your webpage. The industrial espionage agents and others that can seriously damage your organization's business are most likely plugged into your LAN.
Re:Here's the quick list... (Score:2)
Again, there is no reason to have SMB, RPC, SNMP, LPD or anything of that sort running on these special servers with their magical important information. They just have data and a port open for whatever software is used to interface with that data, whether a SQL port or what-have-you.
I'm not saying these bugs aren't significant. They need to be fixed. I'm simply trying to point out that a good firewall/bridge system can go a long way to preventing some problems. Not all of them, but some.
Justin Dubs
Re:Here's the quick list... (Score:2)
I'm curious if you've ever worked in a place that implemented that idea, or if it just wafted out of your crackpipe.
Hint: The "magical important information" is created by users (heard of them?) who use normal applicaitons. Generally the LAN was installed in the first place to allow them to store this information on centrally managed servers. If your internal firewall has to let 137-139 through to allow client access to NT fileservrs, why is there in the first place? (And I've even worked in places that use Lotus Notes with it's better security, real authenticaion and special port. Guess what? People still stick critical data in Excel files.)
The really interesting part of that list... (Score:5, Insightful)
...is that, for the Unix vulnerabilities, most of them have long since been replaced by better, more secure alternatives. Where I work, nobody has used the word "telnet" or "rexec" for years. Nobody here runs sendmail, or sadmind, or SNMP stuff. It's basically a list of "don't ever use this ancient crap" tools.
But for the Windows vulnerabilities, they're all related to current, recent, flagship, "this is what you should be using" products. No alternatives within the Windows world.
Re:Here's the quick list... (Score:1)
I think its misleading to place it as a *Nix problem, since probably most devices being subject to attack will not even be running any widely known OS (more likely they will be printers, routers and the like).
Seems to be down already: google cache: (Score:2, Informative)
http://www.google.com/search/?q=cache:dbJlh35mihk
Click here [google.com]
Some bad information (Score:4, Insightful)
What is more useful IMO is to have a ranking of these "vulnerabilities". Right now an unpatched IIS box can be hit even though you have it firewalled so only port 80 is open. With the *NIX stuff, the only way to hit a sytem via port 80 is bad CGI or a new exploit to the webserver software. And when was the last time an Apache exploit was released?
Look at the CVE numbers. That tells a tale of what is going on _now_. The number has the year and there are many of the *NIX exploits that are 2 years old or more. Many of the Win exploits are within the last year.
Re:Some bad information (Score:2)
I doubt that MS itself is going to be stupid enough to try and say this shows their product is more secure, but I could be wrong. There will always be people who try and scew any information that is presented. This is simply a list of the top twenty security risks compiled by the listed experts. There isn't any quantitative method to rank these issues, so they didn't even try. If your systems has any of these vulnerabilities, you should fix them. This isn't designed as a marketing tool, or an advocacy tool. It's a tool for administrators to check their systems for common, serious security issues.
I agree that Windows, or at least IIS seems to have more security issues that are causing wide spread problems, but the purpose of this report isn't to point that out. These experts could have spent months arguing about how to weigh the different security issues, and how to rank them. Then when the report was released they would be called partial and discriminatory by advocates from both sides. The report would have less credibility, and it's purpose of pointing out security flaws would not be served any better.
Even though most of the *NIX stuff is so old you rarely find it occuring in the real world.
People set up unsecure UNIX systems all the time. Even though these are old issues, they still exist.
Look at the CVE numbers. That tells a tale of what is going on _now_. The number has the year and there are many of the *NIX exploits that are 2 years old or more. Many of the Win exploits are within the last year.
UNIX and Windows are different. UNIX is an older more mature OS. More serious bugs listed are older, because UNIX has been around longer. There's going to be more new exploits in Windows, because there's more active development on new features in Windows. Many users don't need those new features, and would likely be better off with a more mature UNIX solution. Other users feel they need those features, and UNIX has not evolved to provide them with a solution yet. The two OSs take a different approach, and place different priorities on security.
This article doesn't take sides in that issue. The experts don't try and advocate one OS over another. They just point out the issues that they consider to be the most serious, and organize them in a way that it's easy to find the ones that apply to the reader. They did a very good job of trying to stay out of the UNIX/Windows. There are plenty of reports on who has the most vulnearabilities, if that's the kind of report you're looking for, then go read one of them.
How Linux Fares (Score:5, Insightful)
Linux boxes are much more secure than any of the competitors. Solaris is getting better; UnixWare is pretty hopeless (see BUGTRAQ). NT is ... well, draw your own conclusions about NT. I feel much safer with a Linux server than with any other OS and the security just keeps getting better.
-sting3r
Re:How Linux Fares (Score:1)
Re:How Linux Fares (Score:3, Interesting)
This is true, but in addition to the superior security, I find that simply as a user I prefer the way Samba works. When I browse a Windows machine's list of shares, I see everything -- even shares that I'm not allowed to access. I can only find out which ones I can use by trying to access them and seeing which ones succeed. With Samba, by contrast, I find that I can only see the shares that I am allowed to access. One might say that the the signal-to-noise ratio is better with Samba, since you aren't shown things that aren't relevant to you.
Linux not the most secure.... (Score:4, Insightful)
Actually Mainframe admins run pretty tight ships as well. Its a sad reflection on the new generation of admins that most of these are things the old school had never even thought of doing wrong. The current raft of virii are an example. The people hit had new school systems, the old school companies survived untouched.
Old blokes in a distant room of the organisation, possibly called "Gary" or "Dave" never seem to be doing much, but their network never fails.
Re:Linux not the most secure.... (Score:1)
Re:Linux not the most secure.... (Score:3, Interesting)
Thats me. 40+, and always losing jobs to script kiddies turned sysadmins who underbid the job by several orders of magnitude. That means I get the jobs with clued bosses
I lost a bid a few weeks ago to secure a big network in the midst of a complete rebuild. My bid was around 400 hours to do the work, plus 200 hours testing and fixing, using expensive cisco and nokia hardware. The guy who got the contract claimed he could do it in only 3 days onsite with a single linux box.
He left after a week, after he managed to trash the network, and left the whole thing open to the internet over the weekend. CodeRed, nimda, and every box sploited, anon FTP server full of porn, etc. They arent paying him. They cant even find him to prosecute.
They called me monday morning, and my price doubled from the original estimate, and they have no choice but to pay. This will make for a nice month long vacation at the end, a sunny beach or maybe a skiing holiday.
Cant use my nic from this secure location. awwww.
Re:Linux not the most secure.... (Score:2)
SMTP - plain text email
POP3 - plain text email AND usually user/pass pairs
telnet - more of the same
r-tools - 'nuff said (and one of the top 10)
old versions of sendmail - 'nuff said (and one of the top 10)
bind - 'nuff said
RPC - big fat holes (and one of the top 10)
Now, I perfectly understand that much of the above is because the internet "used to be such a nice neighborhood." I'm just suggesting that we not pretend away the past.
-Peter
Dammit, How many times do I have to say this? (Score:5, Insightful)
Linux boxes are much more secure than any of the competitors. Solaris is getting better; UnixWare is pretty hopeless (see BUGTRAQ). NT is
Bullshit. You're lying to yourself. One OS is not automatically more secure than another. Notice the first problem they noted: Default installations of operating systems and applications. They meant all operating systems, they didn't say 'RedHat and Debian are pretty good, you'll probably be okay with them, or at least more okay than someone using Windows.' Not only is this the most important point of the article, all other vulnerabilities stem from it. They all exist because of complacency with the current state of security of a system.
Security is not determined by OS. Period.
A systems security depends on the administrator's vigilance in keeping up to date on patches. Sure, windows has had a lot of exploits lately, but how many of these exploits were not patchable? Hmm. Conversly, Linux and other Unix systems have been not as widely or at least as publically attacked lately. Is this because they have less holes? Redhat 7.1, about 6 months old has 23 security alerts [redhat.com] listed. 7.0 and 6.2 both have over 60. So, there's likely likely more out there in 7.1. Many of these are critical and involve remote root exploits. Feel safe? I hope not.
(Li||U)nix can be attacked with the same efficiency of what we've seen happen to Windows systems in the past few months. Administrators aren't simply better because they admin unix boxes, that's proven in the article that 50% of the copies of BIND that were running in mid 1999 were vulnerable. It would make sense that a similar percentage of other security risks exist as well.
I'm not bashing Unix, and I'm certainly not saying that Windows is a more secure OS. Its a moot point. What I'm saying is that people who blame the OS for their mistakes are wrong. They're using windows as a scapegoat, and ignoring the real problem behind this.
Unix will be hit by one of these sometime or another, and it will be just as publicized because it will likely use the same distrubution methods as before, email.
Go back, read the article again, paying close attention to the generic problems they mention. These are the basic things that any admin has to look at, every day. A machine is never secure. You can be sure of that.
Can you be more wrong? (Score:2)
Using software of doubtful quality is irresponsible
Then don't use software. There's no such thing as software that is bug free, and certainly no such thing as an OS that is secure.
You're ignoring the entire point. If you don't maintain a system it is just as hackable as any other non-maintained system. Since you seem to like unrelated anaolgies let me give you this one: Say you have a boat, it has a hole in it the size of a quarter. The other guy has a hole the size of a softball. Sure he's going down quicker, but if you don't plug your hole you're going to the same place.
Its fscking stupid to choose an OS because you think its more secure than another. Choose it because it's easier to maintain, because it has more features, is easier to use, is cheaper, whatever, but don't lie to yourself and say its more secure.
Give me three servers installed two years ago, RedHat 6.2, Windows NT, and Solaris and left to sit. Which is more secure? Doesn't matter. They've all got huge holes just waiting to be exploited. Now set up these machines today, maybe the Solaris one wins out today, but without maintainence, they're all screwed.
You can't backup the assertation that (LI||U)nix is less prone to problems than Windows. If you go back 6 months that might appear to be the case, but go back years, and you see a huge number of exploits on Unixes.
I've been adminning boxes of all varieties for years now. I had a RH 6.2 box compromised because of a WU-FTPd exploit about a year ago. When this happened I acknowledged in the report that it was because I had not patched WU-FTPd. Not because WU-FTPd had a hole. There was no excuse for the hole not to be patched, because the patch was out and RedHat had issued an advisory, I had simply screwwed up.
Finally, your entire argument makes no sense.
No, this is a fact, you provide no evidence whatsoever to the contrary, just a silly anaology that makes little sense. What isn't smart is thinking your OS is somehow immune to attack.
Re:How Linux Fares (Score:3, Interesting)
Than what? [openbsd.org]
OpenBSD???
Look at the default install of OpenBSD, and you'll find most of the "Top 20" are already addressed. Linux is generally very good, but I wouldn't put the default install of RedHat between my business and the world. It's just too risky.
Until companies treat computer security SERIOUSLY (Score:3, Insightful)
One thing that helps is for companies to hire computer security specialists, and make this their primary job. Instead, many businesses that I work with expect their already-overburdened sysadmin or network administrator to "protect" the network, something he/she has never been trained to do. The average NT Administrator does NOT know much about network security. The new Win2K Security certification is a step in the right direction, but it is only a baby step.
-------------
"Against stupidity the gods themselves content in vain." - Schiller
What's new here? (Score:1)
Re:What's new here? (Score:1)
I'm surprised! (Score:1)
Sendmail (Score:2)
The Value of This (Score:3, Insightful)
In one credible place with annotations and links are the most common problems. Sure most of them aren't news to /.'ers but they're likely news to lots of other folks and exactly the thing to light a fire under the PHB's of the world. It's almost a checklist of "Are these implemented and if not *why* not?"-items for the semi-technical and as such is invaluable.
My thanks to the SANS Institute and the NIPC for releasing such a well-written & useful document.
Re:The Value of This (Score:2)
Bad Idea.
Last time I tried something like this, I got the following response:
"Why would anyone ever want to hack into my computer? Its just all boring work stuff..... Anyway, how come you know so much about hacking? eh?"
ARRRRRRRGGGGGGGGGGGGHHHHHHHHHHHH!
The most secure system... (Score:1)
SNMP exploit is UNDERRATED! (Score:3, Informative)
SNMP on cisco devices is weak because of the default community string names (public, private and secret). To add to the situation, the secret string will allow you to bring interfaces up and down at will, all without a trace of intrusion in the logs. While the big guys like ATT and Wcom may fix these using default config files, may universities and smaller carriers dont even know it exists.
Re:SNMP exploit is UNDERRATED! (Score:1)
New easy way to make sure W2K/IIS is patched. (Score:4, Informative)
The 5 most common reasons for security problems (Score:5, Informative)
1. string.h
2. sprintf
3. system
4. char buff[255];
5. snprintf(buf,len,user_input);
Let's face it, C's string handling is the biggest cause of security problems on the Internet. Static strings are evil. Too bad there is no standard way to handle them in C.
Re:The 5 most common reasons for security problems (Score:1)
Re:The 5 most common reasons for security problems (Score:2)
If you don't know how to use strings, you will get burned everytime. But if you do know strings, and are aware of the tarpits, then every one on your list is perfectly fine.
The number one security problem in C is not strings, but the lack of unit and system testing. Do you unit test every one of your functions? Does someone other than you or your end user perform system testing? Do you even have a test plan?
Re:The 5 most common reasons for security problems (Score:3, Insightful)
This is like banning unguarded circular saws just because people have been known to slice off their thumbs with them. Guess what? Circular saws come with guards. If a tool is really dangerous, and can be made safer through simple solutions, then we use those solutions to make it safer.
Strings are a source of problems for a lot of programs, including well-known programs that have very experianced programmers working on them. Unit testing will never catch all bugs. Many languages - Ada/Java/C++/Perl - have string types that won't cause buffer overflows - ever. Using an unsafe tool when you have a safe tool at hand that will do the job about as easily is just stupid, whether or not you think you're good enough to keep yourself safe.
Re:The 5 most common reasons for security problems (Score:2)
Is your solution then to abandon C?
"Testing is a part of the solution, it's not the end-all be all."
Of course. But it's a basic tool. Not testing your code is much worse than using string functions. I mean BOTH unit tests and system tests.
Re:The 5 most common reasons for security problems (Score:2)
Yes. Considering that its deficencies have been involved in many of the security holes, and other languages allow you to work quicker and more securely, I'd definetly switch to using something else for most cases.
> But it's a basic tool. Not testing your code is much worse than using string functions.
Testing is important, but it takes much less time to turn out a mostly bugfree code and fix bugs from there, then to start from buggy code and fix bugs from there. Do it right the first time, and you don't have to fix it.
C as a high level assembler (Score:2)
The solution that I prefer is to code in, say, SmallEiffel, and have the compiler generate the C code. The Eiffel code is calls to library routines that have been checked. (Well, almost well enough
Plus, if you really need to, you can drop into C for a small routine that's too cumbersome in Eiffel. (This part is easier in Python, though
Too bad people write network software in C (Score:2)
The fact of being automatically buffer-overflow free alone should make people drool over the prospect of using a high-level, safe language. Not to mention better productivity, code reuse, and even sometimes performance.
What mindset drives this crazy practice?
G4 - Large number of open ports (Score:5, Insightful)
"Why is that dangerous?" I hear you ask? As we drive more and more traffic to a small number of ports (read: everything on port 80) because of draconian firewall and proxy servers, and even driving all traffic to one protocol (read: http) a large number of services will still be running, but will now be undetectable without traffic analysis, which is mostly voodoo technology right now. The bugs and security holes are still there, but now they are hidden from us because we've conditioned everyone that non-80 is firewalled (see SOAP and Microsoft's dotNET -- in order to avoid firewalling, they are basically going to do RPC over port 80 using HTTP!)
I agree that unused services need to be shut down, but at the source of the problem and not at the firewall. We need to encourage new protocols to make use of new ports so that we can manage thus stuff -- the more we drive traffic away, the harder our job will be. Please, if you are in charge of a firewall, take time to think about what you are doing to everyone else when you institute strict policies that only make you safer in the very short term. Not only are you hurting yourself, but you're giving your users and network a false sense of security.
Besides, the attacks de jour of late have all propogated over SMTP and HTTP, haven't they?
Consumers cannot fix these problems (Score:3, Informative)
Equally negligent are broadband vendors that give away connection hardware, but can't be bothered to include a firewall or software that will check for open ports. These vendors won't make the simplest effort to insure the product they are selling is secure, yet will not take the responsibility when their service dies due to DOS attacks. These DOS attacks are largely possible because of the massive number of wide-open computers created by their broadband connections.
This is not a rant; this is a statement of reality. Vendors can not, and should not, expect the consumer to be skilled enough to provide adequate levels of security. This is why houses and cars come with locks. Sometimes consumers lock themselves out, but that is a minor inconvenience. As an extreme example, many shoes now have Velcro, and most cars, at least in the U.S., have automatic transmissions.
No stream of security patches, warnings, and news items will solve the problem. The consumer is not skilled enough to keep up. Until the default configuration is secure, until vendors are forced to take monetary consequences for their defective products, and until the consumer is trained to suffer the imposed inconveniences, we will continue to see the same sort of problems.
What aboutthe recent SSH holes ? (Score:2, Interesting)
Atleast i learned that not even the services that have 'secure' in their name are to be trusted completely :-)
Missed one: Cross Site Scripting (Score:3, Informative)
A year and a half old advisory, and sites still refuse to fix it. http://www.cert.org/advisories/CA-2000-02.html [cert.org]
Some of you will remember the problems with Hotmail relating to cross site scripting. Newsflash, it affects your site too!
Re:Missed one: Cross Site Scripting (Score:2)
That one falls under the "bad CGI" umbrella. All freely enterable user data displayed from the user to a web site has to either have all the text escaped (which isn't hard) or filtered for only certain allowable tags (mildly annoying, but not too terrible) - and this applies to stuff fetched from other web sites too.
It's a simple matter of not ever trusting the user to enter sane (non-harmful) text.
Not covered by this item. (Score:2)
They did not mention one exploit that was cross site scripting, even though there have been many many advisories from CERT.
Protecting input from being executed on the server side does not help here. It is also not at all limited to cgi applications. In some cases, it's been the web server itself, in others, it's been the app server. It's also not limited to "user input", which many programmers seem to consider to be the form fields. It really any input values that can be passed to program from the external world. paths, id's, options, etc.. Also, a common place where these holes show up is in error messages spit back to users.. Hardly a place where people look for patching.
SANS' suggested filtering rules in ipchains (Score:3, Informative)
INT_DEV=eth0
EXT_DEV=eth1
# 1. Any packet coming into your network must not have a source address of your internal network
ipchains -A forward -i $EXT_DEV -j DENY -s $MY_NET
# 2. Any packet coming into your network must have a destination address of your internal network
ipchains -A forward -i $EXT_DEV -j DENY -d ! $MY_NET
# 3. Any packet leaving your network must have a source address of your internal network
ipchains -A forward -i $INT_DEV -j DENY -s ! $MY_NET
# 4. Any packet leaving your network must not have a destination address of your internal network.
ipchains -A forward -i $INT_DEV -j DENY -d ! $MY_NET
# 5. Any packet coming into your network or leaving your network must not have a source or destination address of a private address or an address listed in RFC1918 reserved space. These include 10.x.x.x/8, 172.16.x.x/12 or 192.168.x.x/16 and the loopback network 127.0.0.0/8.
ipchains -A forward -i $EXT_DEV -j DENY -s 10.0.0.0/8
ipchains -A forward -i $EXT_DEV -j DENY -s 172.16.0.0/12
ipchains -A forward -i $EXT_DEV -j DENY -s 192.168.0.0/16
ipchains -A forward -j DENY -d 10.0.0.0/8
ipchains -A forward -j DENY -d 172.16.0.0/12
ipchains -A forward -j DENY -d 192.168.0.0/16
### REMOVE the next 3 rules for masquerading systems
ipchains -A forward -i $INT_DEV -j DENY -s 10.0.0.0/8
ipchains -A forward -i $INT_DEV -j DENY -s 172.16.0.0/12
ipchains -A forward -i $INT_DEV -j DENY -s 192.168.0.0/16
# 6. Block any source routed packets or any packets with the IP options field set.
# This is done at the kernel level under Linux, and is usually set by default.
Re:Oxymoron (Score:1, Troll)
"windows security"
or
"military intelligence"
or(ahem)..
"female logic"
Re:Oxymoron (Score:3, Insightful)
Re:Oxymoron (Score:1)
Re:Oxymoron (Score:2)
"Windows vulnerabilities" might be redundant, though.
And I suppose "running windows" is still an oxymoron.
-Puk
Re:Oxymoron (Score:2)
It's not just IIS... (Score:2, Insightful)
Re:It's not just IIS... (Score:3, Insightful)
minimize your risks up front. If you do the right thing beforehand you can have some peace of mind *before* patches get issued. Remember, exploits are around for a while before vendors get around to supplying a fix.
Re:It's not just IIS... (Score:1, Informative)
It has been said a thousand time already, but disable all services, daemons etc, and start only those needed for the particular things this machine do.
This is the first and foremost security measure, and sadly it seems, one of the most overlooked.
Re:Biggest Vulnerability... (Score:3, Insightful)
Think of the chaos one could start by simply emailing everyone instructions on how to 'protect your system', while in reality sending instructions on how to disable their firewalls... The amount of people that would fall for it would be insane!
No, I say the biggest vulnerability is lack of knowledge and ignorance.
Re:Biggest Vulnerability... (Score:3, Interesting)
Agreed. Many (most?) of the "incompetent admins" are, in fact, home computer users who have no idea they've become admins simply by taking responsibility for their own computer. I wonder if a PSA warning people about this, and instructing them on "what you can do to fight cyberterrorism" (I hate that term, but it pulls the right heart strings just now), would cause a good percent of the vulnerable systems to get patched.
Re:Most important? (Score:2, Insightful)
No.
There is a security hole where any user with physical access who randomly guesses the root password on the first try immediately gains full access to the system!!!! There is NO KNOWN FIX!!!!!!
Re:Most important? (Score:1, Redundant)
Re:Most important? (Score:2)
Re:Most important? (Score:4, Insightful)
1. For instance, say you run a public Webserver.. then remote root-exploits are normally more important than local root-exloits.
2. Difficulty. If the exploit is very easy to trigger, then it's generally more important than a devilishly hard one.
3. Widespread use. Holes that are used by every script-kiddie or worm on the Web, is generally more important than others. See 2. as well.
4. Level of access. Exploits that lead to user-access is normally less important than exploits that lead to root-access. This is one of the advantages of most versions of UNIX/Linux vs. Windows. They are normally better at making sure services run as a less priviliged user, and not as root, thus making sure that any exploits in them do not lead to root-access... of course, there are exceptions.
Re:Most important? (Score:2, Informative)
It is extremely difficult to maintain local security on UNIX systems if you and your users are using quite a few tools. For example, GNU Emacs 20 still has temporary file races (really old advisory [uni-stuttgart.de]), and a lot of your favorite tools, too. Such problems disappear only very, very slowly.
Of course, there seems to be a way out of this dilemma: don't install anything on your server except the server software itself. Put each service (HTTP, SMTP, NNTP) on separate machines, and interactive users onto another. Unfortunately, after you've done this, you are facing a remarkable farm of servers, each requiring maintenance, which is not always acceptable.
As a result, if you have limited capacities (and who doesn't?), you are better off when you focus most of your energy on securing against attacks over the network, as long as you can trust your local users. Relying on the security features of a typical UNIX system to confine a security breach to a certain account is not a good idea, at least at the moment.
Re:obsession with security ridiculous? NO!!! (Score:4, Informative)
Course, if those four machines were the front end machines for M$, that might be worth a brag or two ;-)
Re:I'll respond to your troll. (Score:1)