Month: August 2005

  • “Enterprise” levels of insecurity

    Why is it that “enterprise” applications have the worst security?

    If VXers researched this area, they could bring corporates all over the world to their knees.

    Typical mistakes include:

    • clear text management protocols
    • clear text authentication, if performed at all
    • excessive privileges required to do their tasks
    • poorly written and tested – it’s usually trivial to cause agents to seg fault or GPF with simple fuzz testing tools
    • Default configurations are insecure out of the box
    • Default username and passwords
    • require old software stacks which themselves have security issues
    • secretive and obtuse documentation particularly around security issues
    • Stupid limitations… like BMC Patrol’s requirement that all agents run at a matching security level … or else the console does not work. This makes for Big Bang changes in most environments which means no change.

    I could go on, but my blood is boiling. If you are buying management software, buy *secure* management software. Don’t trust the vendor to tell you about this – evaluate the software in your environment. Use Ethereal and ettercap to detect if it’s sending clear text or replayable secrets over the wire. Use the trial softare against a default installation and see if you can manage your test hosts with default passwords.

    Unbelievable.

  • On DDoS protections

    A number of gambling websites recently suffered massive distributed denial of service (DDoS) attacks. These are not the first, and certainly not the last massively DDoS attacks. In fact, the problem will only get worse as consumers place ever more unsecured equipment on the Internet via fast (enough) broadband links.

    The attacks

    The attacks are assumed to be of Eastern European origin, due to the mail servers they choose to use and their broken English. However, even this cannot be guaranteed. What is clear is that they do not write the attack tools, they just use them as part of their extortion racket.

    These attacks can be characterized into three major categories:

    • spoofed UDP traffic
    • spoofed SYN traffic
    • HTTP data sinks

    The first two are utterly preventable and should have never been able to traverse the Internet. The originating ISPs (wherever they are) are ultimately responsible for their customer’s traffic. My view is simple: if an ISP allows spoofed packets as part of a DDoS network, the proportion of losses should be recoverable from these criminally negligent ISPs.

    Countermeasures: network equipment manufacturers

    About the only welcome aspect of a shakeout in network equipment manufacturers is that it is simpler to address one of the core sources of the DDoS problem: ISPs letting spoofed traffic through their networks. If all digital modem concentrators, DSLAM’s and HFC headends had default and unstoppable anti-spoofing, high rate spoofed DDoS attacks would be impossible.

    How to categorize ISPs into those who do the right thing (block customer traffic with non-routeable source addresses)?

    My view is that a scheme which has a dynamic list of BGP AS’s of ISPs who have been audited as “source IP address correct” should be established. After a certain cut off date, any ISP who refuses to be audited, or does not return a audit status, will suffer the consequences of the Internet not passing their traffic.

    This would in a short stroke eliminate spoofed IP traffic as a source of DDoS packets. Even the largest bot nets contain only a few thousand hosts, and with real source IP addresses, technical schemes to rate limit IP addresses, dynamically deny IP addresses and other anti-DoS techniques could be implemented.

    The next portion of the DDoS answer is how to deal with infected hosts. My personal view is that a responsibility is shared between the owner of the infected equipment, the ISP and the vendor of the application or operating system which allowed the infection to take place.

    For example,

    • the customer should have a personal firewall on by default and run modern anti-virus software with recent updates;
    • the ISP should be aware of customers who have unusual traffic patterns and can easily recognize Trojan ports or activities;
    • vendors of software such as (but not limited to) mIRC, Kazaa, or Windows, contribute to the total number of DDoS bots in existence by not putting in controls which prevent distribution or control malware activity;
    • by default, any operating system which provides methods which enable direct access to the network card, or allow the creation of arbitrary packets should have an indefeatible error message for which the end user would have to agree prior to the application being able to communicate with the outside world.

    Although it can be successfully argued that this would only raise the bar in terms of how clever the malicious bots would need to become under such a regime, the reality is that few possess the skills to create new malware. There are a limited number and heavily inter-related attack bots in existance today. By raising the bar, the bots would be:

    • identifiable by source IP address
    • have limited spread
    • have limited opportunity to run successfully
  • Security architecture and document reviews

    I work in an environment where there is “implicit” review. That is, if you don’t respond in time during the comments period, you are assumed to sign off on the document. This is very dangerous for someone like me – I have tenuous links to the client organization, and although my hosting contracting organization has professional indemnity insurance to cover me, it only covers me as long as I’m not negligent. For example, not reviewing a document and letting it through.

    Now this is where it gets tricky – I feel I have to review the documents with my name in them. However, if I review a document, I’m not about to let a sub-standard document through. I will review it and offer advice not just as the subject matter expert, but also on ways to improve the document and make it better. Often times, these are accepted and all are happy.

    However, today I reviewed a truly sub-standard solution architecture document (known as a SAD). SADs normally take the business requirements and maps out in fairly specific non-techo language how a system will work and how it interacts with other systems. The developers take the SAD and turn it into an implementation of the SAD after writing a detailed design (DD). The DD will basically agree with the SAD’s approach, but minor details and extreme technical details will be included.

    For example, a well written SAD will have something like this for every feature which is required to be implemented:

    User Login Sequence

    Scenarios

    • User wants to log into the application.
    • Attacker may want to brute force the application
    • Sequence

    • User is registered using process defined in 3.2.1.
    • User navigates to web site and is presented with a login form (defined in 5.4.3)
    • User fills in username and password
    • System will take username and password and check to see if the password is correct. The username and password are stored in the user registry, following the security principles outlined in section 1.2.3 (ie no reversible passwords).
    • If the credential is correct, move to the foo page (see section 4.3.2)
    • If the password has expired, move to the password reset page (see section 1.4.2)
    • If the password is wrong, display a generic error message (as per message defined by the business – see Appendix A)

    You get the picture.

    Unfortunately, the SAD I reviewed today was so wooly that I think it described a system which had between three and five new screens. I’m not sure, you see. So I gave that feedback, along with another 60 mistakes I found. This didn’t go down too well with the author. I had forgotten the prime directive of security consultants – couch your criticism nicely rather than being brutally honest.

    How to write a report

    However, looking back at it, there is another issue – the author is not qualified to write SADs. No one is – there’s no definitive form that anyone can agree on.

    I feel that to ensure high quality software and secure solutions, there needs to be the One True Way to improve on the production of solution architectures. Five years ago, I think I’d be pushing the line that there needs to be a security architecture as well as a SAD, but no, we need solid solution architecture. Security is a key attribute – this is not in doubt, but everyone is responsible for security, not just the security slaves.

    That’s why I am writing a Solution Architecture Book rather than a Security Architecture Book.

  • Sick as a dog and procrastination

    I don’t know why but after being illl for a few days, I can’t get back into the swing of things.

    I went to work today for the first time since Tuesday last week, and that seemed to have helped. But I also P’d some time against the wall importing all the old Moveable Type blog entries here. MT was pissing me off – so many link spams. I’ve never had one here, so I moved all the posts from the two blogs here. It’s interesting to re-read some of my old posts.

    The book for A-W is definitely needed. Security Architecture is just so undefined – it’s a wide open field.

    OWASP Guide is also lagging – need to kick off the 2.0.2 edits and get that out the door. I’ve been playing around with InDesign to see if I can make a better looking export. The 2.0.1 print from Word is primitive.

  • DefCon Wrap Up

    Well, I’m back. Alien Andrew has departed, and it’s a nice cool 14 C again.

    Rolling back to Sunday afternoon…

    After posting my crop dusting blog entry, Mike P rolled up and we went off to the cafeteria to deconstruct the last few days. It was good to catch up before I left.

    At around 12.30, Chris and Jen from newbeetle.org rang, and we organized to go to the Hofbrauhaus a few doors away from DefCon. Well, was that a hoot! Lots of singing and being (very) merry care of copious quantities of good quality German beer, a decent meal, and I was ready to be poured on to the plane. Chris and Jen are the best! They even dropped me off at the airport.

    It was a good thing I was a bit sozzled – the TSA screening process is awful in its mediocrity and not ameriloated in any way by the absurd queue lengths. They didn’t ask to see my laptop working, they just wanted to XRay it. They didn’t hand search my luggage to determine if I had any ninja tools or anything like that. They just processed us like as if it meant something. TSA searches are a complete waste of time and are completely ineffective against an even half arsed adversary.

    I was waiting in the public lounge area for my flight when spontaneous applause from the public erupted when about 20 soldiers from Iraq returned on a flight. It’s good that even though the war is illegal and the actions of the US leadership dubious, the public still support their armed forces. I could see the smiles on the faces of the men and women returning, and I could see they appreciated the public’s support.

    The five hour stop over in LAX was ordinary with only one saving grace – I didn’t have to be re-screened.

    The flight home was long and terrible – United as per normal put their most elderly of planes on the LAX – Sydney route as only Qantas competes with them. Qantas also use retirement villa planes for this leg. Very uncomfortable thin seats, with no entertainment system in the seat backs to play with. My seat wouldn’t recline as far as the seat in front of me did, so I was squished most of the time. Plus, the seat pitch was tight – about the same as Virgin Blue’s domestic flights. I will not be travelling United again.

    Once we hit Sydney, we were screened… twice. Once when we left the plane to go back into the sterile duty free area near the gates and again when I re-entered the gate area. This was the only time my baggage was hand searched. I don’t know what they’d find after being screened several times already. Oh well, screening passes the time.

    I eventually hit home around 1 pm after travelling again for 32 hours. I missed Monday altogether. When the A380’s come out, I will fly whoever travels point to point: Melbourne – London non stop, bring it on! I hate being screened constantly and pointlessly.

  • DefCon Day 2 and a bit of Day 3

    Well, alien Andrew is in full control. I was up at 4.30 am on Saturday morning, and again this morning. Unfortunately, on Saturday, I crashed about 8.30 am and slept to near 2 pm.

    I went to DefCon at 3 pm to meet with Brenda from the Trike team. We had a good discussion on the approach to Trike for larger apps and how Trike might be suitable for inclusion into OWASP materials.

    At 4 pm, I met with Meredith and Robert from the u. Iowa Dejection project. I went back to Meredith’s hotel room and we had a very long and interesting discussion on the future of their project and many other topics. I bounced a few ideas off them. All in all, this was the best and most useful part of DefCon for me – the networking with clueful people.

    DefCon has been very disappointing. What the hell are folks working on? DefCon 13 has nothing really new or exciting. All the attacks I’ve seen (or reviewed in the PPTs on the CD-ROM) are derivative and boring. There’s so much web app sec stuff occuring and DefCon schedules not a single session, and yet has four back to back sessions on physical security on lame devices like door locks and safes. If we made encraption as bad as the average door lock or cabinet we’d be laughed out of the house. I can’t believe that people think that this stuff is bleeding edge.

    So today, I’m going to meet up with some folks from newbeetle.org – Jen and Chris, rather than sweat it out in any of the remaining sessions. The CTF competition is winding down behind me as I write, and the drum and bass sound track is getting thin. The geek next to me is listening to his own stuff rather than be pummelled by the incessant driving bass. Defcon needs good DJs who are aware of the many styles other than D&B. I love techno music, and this stuff is repetitive crap.

    The other thing that really really pisses me off is the smoking. WTF were the organizers thinking? There’s like 5% of the attendees smoking and they are making this room unbearable despite aircon working overtime. I’m going on a serious crop dusting mission soon. I love dropping my guts right around an active smoker. The dead thing emissions from my nether regions are nothing to the foul deadly particulate stream that I now stink of, thanks very much.

    The worst part is that outside is literally just 5 – 10 metres away. They could kill themselves out there and not harm me and the other 95% of the participants.

    If I come again, I’ll find a reliable source of onion rings so my crop dusting missions will be all the more fruitful. I have to spread the love.

    I have to be at the airport for 5.45 to make it back to LAX in time for my late night 16 and a bit hour flight to Australia. I miss out on Monday altogether. Oh well. I had two Tuesdays this week.