Code Execution Bug In Broadcom Wi-Fi Driver 157
2U*U2 writes to mention an EWeek article about an entry in the Month of Kernel Bugs. John Ellch has discovered a critical vulnerability in the Broadcom wireless driver: a driver used in machines from HP, Dell, Gateway, and eMachines. From the article: "[The bug] is a stack-based buffer overflow in the Broadcom BCMWL5.SYS wireless device driver that could be exploited by attackers to take complete control of a Wi-Fi-enabled laptop. The vulnerability is caused by improper handling of 802.11 probe responses containing a long SSID field and can lead to arbitrary kernel-mode code execution. The volunteer ZERT (Zero Day Emergency Response Team) warns that the flaw could be exploited wirelessly if a vulnerable machine is within range of the attacker."
Thanks (Score:5, Funny)
Here, I'll help:
Code Execution Bug in Broadcom Wi-Fi Windows Driver
Re:NDISWrapper (Score:3, Informative)
Re: (Score:2, Interesting)
Dont quote me. I dont have a Broadcom wireless.
Anyway the flaw wouldnt affect Linux systems. Why? Different kernel.
Re:NDISWrapper (Score:5, Informative)
Re: (Score:1)
> Broadcom users on Linux should really be using the bcm43xx kernel module by now.
Out of the table of ten global "chip family id's" listed here [berlios.de], only 3 are currently listed as supported, the others are at best "unstable".
And personally, I didn't manage to get a BCM4318 "Air Force One"-based card (no, I didn't buy it, it was "inherited") working with the native module (Ubuntu Dapper). Sigh. Guess it's time to fish out the long cables until the Windows drivers get patched.
Re: (Score:3, Informative)
currently I think its officially listed as unsupported (11Mbs and 18Dbm)in ubuntu. Using ndiswrapper the driver forces the card from mode0 to mode2 and the card works reliably at 54Mbs and transmits at 25Dbm.
whats mode0 whats mode2 you could ask broadcom but they don't answer. Personally I would boycott Broadcom products and go for a more linux friendly companys chipset such as ralink, unfortunately with
Re: (Score:1)
The bcm43xx driver doesn't work (Score:2)
Re: (Score:2)
Re: (Score:3, Informative)
They want to , but bcm43xx is still unstable in long term use for some chips. It will work happily for a few hours, or even days and then something bad happens (ranging from dropped connections to panics). A lot of people have blacklisted this driver and gone back to Ndiswrapper [google.co.uk] , (eg new installs of Mandriva 2007, Ubuntu 6.06).
I personally had the bcm43xx drivers cause system instability with two very different machines an
Re: (Score:3, Interesting)
Re: (Score:2)
Re: (Score:2)
There is a native driver [berlios.de], but neither it nor ndiswrapper work worth a damn with my AMD64 Gentoo install. For the time being, I've given up on getting Linux WiFi working and just hang a Linksys WTR54GS [linksys.com] off the network jack when I need to connect to someone's wireless network.
"BCMWL5.SYS" (Score:5, Funny)
Re: (Score:3, Interesting)
Re: (Score:2)
Zonk only uses Windows and Hates SONY (Score:2)
ndiswrapper (Score:2)
Well crap. (Score:5, Funny)
Checklist for today:
So... (Score:4, Insightful)
Re: (Score:1)
It was never about apple, kids. That's what he (and guys like him) do. Just be greatful he's on your side, not just his own.
Re: (Score:3, Interesting)
Re:So... (Score:4, Interesting)
"He still hasn't disclosed any information on a bug in apple-supplied wireless drivers for apple-supported wireless devices..."
Nor are they obligated to. Odds are that the presentation had the desired effect and there was no need to proceed further.
"...even though he was offered stuff for actually proving what he'd said (John Gruber, for example, offered to give him two brand-new fresh-out-of-the-box macbooks if he managed to hack them)"
No, here's the link:
http://daringfireball.net/2006/09/open_challenge [daringfireball.net]
Gruber challenged them to hack a macbook (not two) with many stipulations. The challenge was to be videotaped and the conditioned were not under the control of the hackers. If the challenge was not met, the hackers would have to pay for the machine. The results of the videotaping were the property of John Gruber.
There are plenty of reasons for not accepting the challenge. They may have felt that there would be too much risk that they didn't want to accept, they may have not given a shit about John Gruber (likely), they may not have wanted to contributed to his pro-Apple site, or they may have had no interest in the lame reward offered. A macbook may be exciting to you and John Gruber but probably not to them.
Just because additional details were not provided on demand to Apple loyalists does not mean that vulnerabilities didn't exist. IMO the test configuration was chosen because it was the easiest one to demonstrate the flaw. That doesn't mean it's the only one that contains the flaw though Apple apologists have always insisted otherwise.
Re: (Score:2)
The primary reason being that they couldn't do it.
Their problem is that they made ambiguous claims, and were given many chances to clarify their claims. Specifically, do they have a working exploit that can take over a clean, up-to-date MacBook with no user-intervention other than that the AirPort card be enabled? They've never directly answered that question. NEVER. And they've been given multiple opportunities. Gruber's challenge was mean to fina
Re: (Score:2)
Only they know the answer to that, not you. I figure they don't consider themselves circus animals and don't have any interest in jumping through hoops on orders from a clown like Gruber. It's also conceivable that they may have had some sort of agreement in place that restricted what they could publicly disclose.
"Their problem is that they made ambiguous claims, and were given many chances to clarify their claims."
Who gave them these chances? Anyone th
Re: (Score:3, Insightful)
In what way am I deluding myself? In every conceivable way, the hackers in question have failed to give me any reason to believe they actually had an exploit against Apple's AirPort drivers.
Sure, it's *possible* they really had an exploit, and they just don't care if anyone believes them. But given they've not given me a reason to believe them, why on earth should I?
Even worse, they've never even made it clear EXACTLY WHAT their claim is. In other words, they've never st
Re: (Score:2)
In every conceivable way? The fact that they demonstrated the flaw and said it existed in many configurations including Apple's isn't conceivable to you? You live in a fantasy land where Apple can do no wrong.
"But given they've not given me a reason to believe them, why on earth should I?"
They did give you a reason to believe them but you chose do de
Re: (Score:2)
Yes, you do. You're doing it right now.
Straw man, I've stated nothing of the kind.
Gee, with all the attention on the drivers, funny that Apple would go through and look at them! However, the update *DOESN'T ADDRESS THE SAME ISSUE IN QUESTION*. Funny that doesn't seem to matte
Re: (Score:2)
I have not. All I've done is consistently counter the claims by you and others that the researchers were frauds who failed to support the claims of flaws on the mac platform. I've never defended them other than to support that that could have been right and I've offered reasons to explain non-response to public criticism. It is you that is making indefensible claims here, not me. I have no position one way or another on their claims other than I take them at face
Re: (Score:2)
Or so that the company involved can and has to update it's flawed drivers and patch the flaws.
Yes.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Not really, I don't even own a laptop let alone a mac.
So you acknowledge that it was a stunt and a lie. Good.
Uh yeah? His conditions seemed pretty standard stuff it you look at it fro
Re: (Score:2)
I acknowledge that what you just said was a stunt and a lie.
"Uh yeah? His conditions seemed pretty standard stuff it you look at it from a scientific standpoint."
Sure, videotaping and having the camera controlled by john gruber is part of the scientific standpoint. I'm sure that offered plenty of encouragement. Offering a measly reward worth, at best, a small fraction of what they could have gotten from Apple, was part of the scientific standpoint
Re: (Score:1, Informative)
Re: (Score:2)
If their hypothetic flaw is now patched, why don't they demonstrate their attack on an unpatched macbook unless "because they didn't find a flaw in the first place"?
You know, scientific method 101 says it's not ours to disprove that they found a flaw, it's theirs to prove they found one in the first place, which they've never done.
Re: (Score:2)
There you go proclaiming the reasons for things you don't understand. Who says they haven't demonstrated it? They just haven't demonstrated it to you.
"You know, scientific method 101 says it's not ours to disprove that they found a flaw, it's theirs to prove they found one in the first place, which they've never done."
The scientific method s
But which OS!? (Score:5, Informative)
Admittedly, the article to which this newspost links also doesn't mention this until the third or fourth paragraph or so.
At first I thought the article was about the Linux kernel, in that case I would have wanted a (global) list of the OS's/versions affected as well, because my laptop might have been vulnerable in that case!
So, I assume it's just Windows XP SP2 (and probably older SP's), or other versions as well?
Re: (Score:2, Funny)
Please never scare me again like this, for a moment i thought Windows was more secure than Linux...
Johnny Cache (Score:1, Funny)
"Microsoft's Windows operating system is exploitable without the existence of an access point or any interaction from the user.
The card's background scan of available wireless networks triggers the flaw," the group said.
eWEEK.com Special Report: Mac Security"
The bug was first discovered by wireless security guru Jon "Johnny Cache" Ellch, the researcher who was embroiled in a controversy with Apple over similar bugs in the Wi-Fi driver that ships with the Mac OS X.
Checklist for today:
1. Ea
Kind of makes me glad I've got homeplug.. (Score:3, Interesting)
Re: (Score:1)
Does your house have any external outlets?
Re: (Score:2)
Re: (Score:2)
is a little bit of folly. No, you can't have the article's attack made on you.
But as the parent poster has pointed out, you're not as protected as you think-
someone can snoop in on your traffic if they've got their own home plug and can
tap into either phase of the two-phase 220v circuit comng into your house.
With clever enough hardware they wouldn't even need to do that- it emits enough
RF-like signal...
Fixed wiring Ethernet is pr
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
for home have relied on the meter to handle the cross-over between phases, etc. If you've
got two meters, I suspect you'd need a bridge of some type like the X10 booster bridge for
homes to bridge them all without mixing the power from each feed.
Re: (Score:2)
What about those phone-home laptops? (Score:2)
The feature is supposed to be impossible to turn off (for obvious reasons).
How long before someone finds a bug ion one of those? Won't that be fun, a vulnerability you cannot turn off
Broadcom neglegance (Score:2, Insightful)
Which is it Broadcom? Either way it is neglegance. Im tired of developers spouting hot air about being Accountable, Responsible and Reliable etc blah blah and especially practicing good engineering and hearing design patterns yawn. I hear it every day, I worked as a dev and left it as its the same old shit every day day in day out, same for test.
We have tools, run them, we have practices, use them.
If those are not good enough, retoo
Re: (Score:1, Insightful)
More fool them. Its pure and simply, bad engineering, product design and management.
Linux (Score:1)
Re: (Score:1)
Plus they are generally better than the Broadcom devs because they dont have the chip manual infront of them while they are writing the driver.
Re: (Score:2)
Re: (Score:1)
It works because it's free and it can, Re:Linux (Score:2, Interesting)
Does my "reverse engineered" linux driver have this bug?
Probably not. If it does, it will be fixed soon.
Why is it that a bunch of people who don't get paid come up with bug-free solutions?
It gets fixed because it's free and therefore it can be. Non free software writers put up with NDA's and code they can't share even if they wanted to. Their code is owned and so their effort and good will is likewise owned. Free software writers are free to share their tools as well as their improvements, so it'
User space device drivers (Score:5, Insightful)
Will this help? (Score:2)
In some cases it could be that the user would have access to all network cards, which would mean that from a virus/spam sending/worm point of view the computer will be usefull to the hacker, even if it is otherwise secure.
Maybe keyloggers will be prevented, and writing to the disc, i.e. malware surviving the next reboot. But in general it seems to me
Re: (Score:2, Insightful)
Re: (Score:2)
Is this related to the (Score:1, Redundant)
I still haven't been able to figure out if they've demonstrated a real vulnerability or not...
Re: (Score:1)
I believe there is a strong possibility it is related. I've used a third-party wireless card with a Broadcom chipset in G3/G4 Macs before, and it was recognized as an Airport Extreme (b/g) card.
I've heard that Broadcom has been less than cooperative in providing specs for others to write drivers. Perhaps if they were more open they'd have a better scrutinized more secure product. (I can't provide specific links, but I
More details at... (Score:5, Informative)
http://isc.sans.org/diary.php?storyid=1845&isc=2e
Or look at the Month of Kernel Bugs site itself:
http://projects.info-pull.com/mokb/MOKB-11-11-200
Separate stack (Score:2)
The added cost in processing time should be quite negligile, as long as simple, fixed-size data, such as integers, are still on the main stack.
Re: (Score:2)
Re: (Score:2)
Depending on various considerations you might define, for example, that integers, floats, chars, booleans and pointers go on the main stack, along with all data types that have been defined to be implemented as these types. Everything else goes on the second stack. Thus, for example, all arrays go on the sec
Re: (Score:2)
There would be a special part of heap space that would grow and shrink as a stack. This special area could be very similar to the ordinary heap, with the difference that allocation and deallocation is very much faster, since it grows and shrinks as a stack.
With this arrangement, dynamically linked modules don't necessarily need to be aware of the second stack.
Re: (Score:2)
Indeed. But I think that, among those exploits that have really severe consequences, this is one of the most frequent.
It's a design decision... (Score:2)
they were originally intended for. In the case of C, the machines in question only had one hardware stack, so they
intermingled the subroutine return state with the parameters, etc. for speed's sake. Implementing a second stack
in software would have been problematic because it would have added extra performance issues and ate into the
register store (you want to probably reserve a register for th
Re: (Score:2)
(I wish the PC had been based on the MC68000 architecture, it was so much better in so many ways!)
Re: (Score:2)
Re: (Score:2)
Workaround for non-Linksys devices (Score:5, Informative)
Re: (Score:1)
bcm43xx (Score:1)
Thanks for any explanation.
Re: (Score:2)
the firmware layer for the device.
Yawn (Score:1, Flamebait)
By the way, what is this guy's name? I've seen it published as "Erlich" and "Elich" before, and now slashdot says it's Ellch. One thing's for certain. Anybody who c
Please stop using C. (Score:2)
(and please I do not want to hear 'but Linux is so safe', because it is not).
Link to previous post:
http://it.slashdot.org/comments.pl?sid=204783&cid
Re:Please stop using C. (Score:5, Insightful)
It's not that simple. C is used in high performance code specifically because it's fast and compact. You get these improvements by avoiding needless length checking. Obviously there are cases where you _do_ need to length check buffers (and exploits are the result of not doing this), but you don't have to length check everything. If you ditch C in favour of a language that does the length checking for you then you will sacrifice speed and compactness since it will be checking _everything_.
What language would you suggest is more suitable for writing high performance kernel code?
Puh-lease. (Score:5, Informative)
C is, essentially, portable assembly language. I love it -- it's one of the languages I know the best, and I continue to work in it. However, I'd love to see the use of Cyclone or special compile-time checked languages for the essentials. I think most device drivers could be easily rewritten to be bullet-proof (stack overflow) this way, and such languages are easier to do state machine analysis on (since most device drivers are simple pieces of software that control the state of the hardware). Provably correct operating system design is not a theory, but no one seems to be interested.
Re: (Score:2)
Possibly it has something to do with formal proofs only being realistic on toy systems.
Anyone can formally prove a 1 line Hello World program will work to spec but try
to formally prove the 20 odd million lines of code in a modern OS and your descendents
will still be doing it 3 generations from now.
Re: (Score:2)
But since you asked, there are two solutions:
1) use Cyclone. It outputs C code anyway, and the language provides enough mechanisms to identify where it does not need to do bounds checking.
2) use Ada. It also outputs C code, and its range types are a good solution to the problem.
3) use C++ as C on steroids: simple template value classes for array
Re: (Score:2)
So you don't think data throughput speed is important then?
Re:Please stop using C. - Duh (Score:2)
Thats like saying guns kill people.
Stupid people are the problem, not the tools.
Re: (Score:2)
Re: (Score:2)
The kids of today however don't have a clue about the programs on which this internet is based on. The routers, the switches, the firewalls. Do you thing they are all written in C++ or Java?
C powers this world. You just don't know it.
Re: (Score:2)
What about ndiswrapper and bcm43xx kernel driver? (Score:1)
It has to be said... (Score:2, Insightful)
Re: (Score:2)
With the exception of the Atheros HAL (which, while semi-closed, has a decent number of people outside of Atheros looking at it - Most of the Atheros HAL ports are done by non-Atheros volunteers who have signed NDAs for the source), pretty much all other binary "blobs" only execute on the card itself. Whether the blob has a bug or not, as long as the code interfacing with the card that runs as part of the OS kernel itself is open-source and secure, a firmware blob t
buffer overflows... (Score:2)
Re: (Score:2)
Are they even the biggest remote security problem these days, with cross-site scripting and SQL injection running rampant?
Re: (Score:2)
Re: (Score:2)
I believe some of these changes have made their way into the main branch of GCC, although I don't think a
Re: (Score:2)
and isn't there supposedly something similar in linux to?
heh, maybe i should consider going openbsd (heh, nice name for such a secure bsd).
hell, why i have yet to go linux atleast i don't know...
Someone please enlighten me... (Score:2)
Their day one bug was an exploit of the old Apple Airport - Broadcom - wireless drivers. This day eleven exploit is of Broadcom's Windows wireless drivers. I realize the OS has changed, but is this more or less the same exploit? Or is this leveraging some issue that's actually in the chipset?
Re: (Score:2)
I'll go make a pot before I come back.
Re: (Score:2)
What Century Will It Be (Score:2)
How many years now have they known this is a no-no?
When the hell are programmers going to be adequately trained in proper coding procedures?
When the hell are humans going to stop taking pointless shortcuts contradictory to their end goals? Or start using computers to CHECK FOR their stupid mistakes instead of using them to MAKE their stupid mistakes?
I've just switched back to Opera 9 because Firefox 2.0 is so riddled with stupid