Posted
by
timothy
on Wednesday May 19, 2010 @02:48PM
from the inexorable-and-dedicated dept.

An anonymous reader writes "The release of OpenBSD4.7 was announced today. Included in this release are support for more wireless cards, the loongson platform, pf improvements, many midlayer filesystem improvements including a new dynamic buffer cache, dynamic VFS name cache rewrite and NFS client stability fixes, routing daemon improvements including the new MPLS label distribution protocol daemon (ldpd) and over 5,800 packages. Please help support the project by ordering your copy today!"

A criticism of the OpenBSD security philosophy is performed, along with an examination of the claims made regarding the project. In particular their rejection of any advanced access control framework is examined. A well researched and well written article, followed by over 200 comments that are also worth reading.

Most of us have been reading slashdot long enough that "several times a year" qualifies as sufficiently regular.

And yet going back even farther to more than 6 months I've yet to see a single one of those supposed articles that criticize Linux security. Care to actually link to even a single article that isn't more than a year old?

1. The fact that the OS code is audited is nice, but can't protect against other insecure software. If you run postfix which isn't audited, and it has a hole and the attacker gets root, then there is nothing to stop them.

2. An example from a commenter on the blog is that he needed to prevent root from reading users files. OpenBSD is almost the only OS left that can't meet this requirement.

3. Auditing, along the lines of what OpenBSM provides. This isn't related to MAC, yet the team still doesn't impleme

The fact that the OS code is audited is nice, but can't protect against other insecure software. If you run postfix which isn't audited, and it has a hole and the attacker gets root, then there is nothing to stop them.

Maybe I'm wrong, but if the mail server isn't crap it should give up root privileges as soon as possible. So, to get root you need to do two things.

1) Exploit a bug in the mail server2) Exploit a bug in the operating system to gain root privileges

If MAC is part of the operating system, and can therefore contain operating system bugs, how does it mitigate step 2? How does it mitigate it any more than an operating system without MAC?

An example from a commenter on the blog is that he needed to prevent root from reading users files. OpenBSD is almost the only OS left that can't meet this requirement.

Are you serious? The root user has ultimate power by definition. That's b

The mailserver is just an example. There is plenty of insecure software running as root.

FTFY

MAC cannot prevent the exploit as such, but it can make the attacker completely limitless. You can take away execute permission, write permission (allowing just append), no file creation, absolutely nothing except the very minimal that the program actually needs.

This sounds a lot like what securelevel(7) [openbsd.org] already does.

There is absolutely no reason to have a user with absolute power when we have the technology to segregate power and duties, there by significantly reducing the attack surface.

There is absolutely no reason to put up walls so the sysadmin can't do anything, rather than fix the bugs that let an attacker gain root in the first place.

This sounds a lot like what securelevel(7) [openbsd.org] already does.

Nope. Not at all similar in terms of capabilites. Securelevels are a pale imitation of what you can do with MAC, not even close.
If you really think securelevls are at all close to MAC, then you really don't understand MAC.

There is absolutely no reason to put up walls so the sysadmin can't do anything, rather than fix the bugs that let an attacker gain root in the first place.

It's not putting up walls, it's enforcing secure policy and good practice, and sometimes the law.

Perhaps every Ubuntu release story should have a link to a site titled "The Unusability of Ubuntu." Seems fair, doesn't it? The article would necessarily have to be negative... title non-withstanding.
Slashdot has turned seriously hostile to non-Linux open source operating systems. I'm not sure why. I've even heard people here use the classic, "nobody uses it, so it must be bad" argument - the same one Windows users make about Linux.

Ubuntu is not unusable regardless of what features they decide to leave out, while the argument is made that OpenBSD is insecure because of features they do leave out. So, the analogy doesn't quite work.

It isn't unusable to start with, your just attacking it because you personally don't like it.
Additionally, an argument for MAC is not bolting features on after the fact. If it is properly implemented, it is in the kernel to start with. Unlike, say, rewriting Apache over 10 years to have privilege separation, which is adding it on after the fact.

No, it's unusable because it doesn't support my wireless on my Dell laptop at all. My choices are crap NDIS wrappers or the reverse engineered Broadcom drivers, both of which drop the connection at least twice a minute which makes doing any actual network transfer nigh impossible.

It's unusable because the goddamn thing can't remember the way I arranged my panel from one boot to another without moving shit all over the place regardless of whether I lock it or not.

The original author's argument consists entirely of pillorying OpenBSD for its lack of any Extended ACL framework as a second line defense against security breaches. Posters in the comments section rightly point out that OpenBSD does indeed include other second line defenses like PID randomization, ASLR, and extensive support for chroots - some of which are still not supported by default in Linux distributions today. The OpenBSD maintainers' choice to focus on ensuring the quality of the first line applicat

Oh come on now... The title is inflammatory and tone is combative. Unsurprisingly the discussion at guy's blog degenerates pretty quickly.

I don't really disagree with most of his central points: Secure by default isn't really useful to most people; OpenBSD needs more security features than older UNIX ones; and the OpenBSD team does themselves a huge disservice with their "not invented here" syndrome... But really the whole thing could be been written with a more professional tone and fostered a lot more constructive discussion.

With respect, a name server is about the easiest thing to secure. It runs one application plus (maybe) ssh. The only vulnerabilities will be in BIND and they are not considered OS issues by OpenBSD anyway. Try securing a system with 100 untrusted interactive users. Or running a dodgy webhosting control panel, then see how you go.

If I can't see examples of OpenBSD running Gnome with transparent Conky over a red Lamborghini Murcielago wallpaper and maybe some cascading green character columns like the Matrix, I'm going back to Ubuntu.

so I didn't want to use my bandwidth for my fun and used a free hosting service instead for my photo, big deal. It'll be accessible for at least a year. And even then by context anyone can deduce my point that OpenBSD runs GNOME and Conky with effects just dandily, even on laptops.

the concerns of that "link shortener" article are laughable. Author is warning of a doomsday when archives of posts from Twitter and other social networking sites become a tangle pile of broken links because of "short URL use"

Yeah, I use OpenBSD. My firewall's named linksys and the SSID is default, both for sheer entertainment value. OpenBSD like anything else has its flaws: namely a insular and hostile user community and theocratic leader with a vision. On the other hand it's people like that who get things done.

It would be nice to do more with OpenBSD than I can now, but last I checked ports didn't have the latest asterisk, getting the latest Java running is a pita, the latest Apache has an incompatible license or something, ZFS will never be supported, etc, etc, etc. But staying up with the latest software isn't really a design goal for Theo & crew. It's sort of the PVP UNIX - no care bears welcome. Their targeted approach to security over features makes it the best OS out there for targeted uses, but who knows if they'll make it to 5.7 - decreasing relevance and due to narrowing mainstream software support definitely also narrows interest.

Yeah, I use OpenBSD. My firewall's named linksys and the SSID is default, both for sheer entertainment value.

I guess you could describe that as "What's the sound of one-hand clapping?" or "An inside joke of the nth degree".;-) Entertainment aside, pf users and fans should note the pf syntax changes [marc.info].

I've got a couple openBSD boxes myself. One is on httpd duty, the other doesn't do much, just sort of general purpose - I'm planning on making this one into some sort of automatics control for the house (turn the lights on, report temperature, I don't know, a bunch of lame stuff like this).

"I'm planning on making this one into some sort of automatics control for the house (turn the lights on, report temperature, I don't know, a bunch of lame stuff like this)."

OBSD has support for the 20 pin gpio header on a Soekris net4801 board out-of-the-box. With that you can easily make either digital or transistor switches to control things. The shell command is gpioctl which you may want to grab the source and mod it so its not reading command line arguments and can be put in your code without an os s

Cool. I've got an AVR32 [atmel.com] (not ARM or MIPS, something completely different) powered board that I've played with a bit, similar idea I suppose. Although I don't believe there is an openbsd port for it... I should pick up something ARM sometime, here..

I've got a sort of hate for the gpio subsystem in linux, and I've never played with the one in openBSD - I'll have to look into that.

Luckily the board I have in mind has a full PC/104 bus (essentially ISA, with a different connector), so I can inb/outb to my heart

I've got a couple openBSD boxes myself. One is on httpd duty, the other doesn't do much, just sort of general purpose - I'm planning on making this one into some sort of automatics control for the house (turn the lights on, report temperature, I don't know, a bunch of lame stuff like this).

For that I would use a microcontroller. An atmel atmage8 draws 5mA running at 20MHz. It has better low level IO capabilities than a PC and it can talk to a PC through a serial port. The idea would be to use the microcontroller for day to day control and start the expensive (in power) PC when you have new instructions for it.

bullshit, for software project 15 years with tens of thousands of users worldwide is smashing success and proven endurance. There are multi-million dollar commercial software success stories that have risen and fallen in a shorter time and are no longer used.

OpenBSD doesn't want to take over the world, see the project goals [openbsd.org]. This doesn't stop their work becoming used on a large scale, but this happens because of the software's features and technical superiority.

On the other hand, many Linux advocates seem to be obsessed with the idea of world domination. I've seen these people choose Ubuntu for reinstall/upgrade jobs when their friends and family would genuinely be more comfortable, and better off, with Windows or OS X.

I'm not sure that it has decreasing relevance. For something like a firewall or other networked appliance (where you don't actually have users logging on and interactively using it), OpenBSD is way ahead of the game. Auditing the kernel and securing that is actually a good strategy for such devices, whereas mandatory access controls would be more of a cycle-hog. For reasons I don't entirely understand - or agree with - the world is slowly moving away from desktops and towards appliance-based computing. Look

I've observed the OpenBSD attitude as being anything but religious in most cases, at least compared to FSF/GNU folk, and far closer to the laudable `shut up and hack'.
The community may appear hostile, but successful users need to have initiative rather than being spoon fed. `RTFM', or a milder equivalent, is often the best way to encourage that.

As others have noted, this was a double entendre if not downright pun. OpenBSD users are not by and large welcoming if someone trips across the wrong e-mail list. As I stated - it's the PVP OS: come prepared to defend yourself. In the case of OpenBSD that means reading the FAQs, trolling the list history and submitting a dmesg when you do ask a question. Failing to do that is the EVE Online equivalent of flying your pod through 0.0 space.

IMHO if someone has problem with OpenBSD community/leader, he should hang at Mac community/websites/mags and especially IRC channels for a while.

I also think OpenBSD theocratic leader and hostile community could be the reason why OpenBSD has its unique and prestigious position today... We all heard how many users got banned for questioning inclusion of Mono to a "user friendly" Linux OS distro which has democratic leadership right?

The difference between the OpenBSD community and the Apple community is that the OpenBSD folks know what they are doing. I'm not trying to troll here, but Theo is an asshole, and the exact type of person that I want developing my kernel. His know-it-all attitude and demand for "not-created-here" things to gtfo led to the development of things like OpenSSH. I like the OpenBSD coding style and best-practices in addition to how they audit and analyze their code; more than any feature this is paramount in selecting software for us.

OpenBSD has fewer kernel panics than 2.6.xx.xx and for network tasks has better performance for us.

It would just be nice if they extended their definition of security to be more than preemptive bug fixing.The article I linked to above is a good discussion of this. Given how they flat out reject MAC, and the reasons they give for doing so, it seems they know very little about actual security.

Their definition of security goes far beyond pre-emptive bug fixing, but the author of that article is ignorant of OpenBSD security, and Unix security in general, and moreover thinks MAC will save him from the common exploits that bring down real machines (which any experienced Unix admin knows is total B.S.)

No, a MAC won't keep an exploit from destroying data files for which a user or application is already allowed access. Suppose a buffer overrun exploit is used to gain control and corrupt the application's database which is allowed by ACL. What is your MAC going to do? Nothing, that's what.

On the other hand, other features of OpenBSD *do* come into play against such a problem.

Yes. MAC is primarily about supporting military information classification levels. While that also has some security applications, they are fairly limited when it comes to civilian computing appliances and single-user workstations. Since those are the main niches that OpenBSD targets, It makes sense that they would eschew that extra complexity in favour of other approaches that have a bigger security payoff for those applications.

MAC will most certainly keep an exploit from destroying users permissions. You can think of it as permissions not being based on users, but perr application/objects.

Lets say a user exploits Firefox...you would think the exploit would have full access to the users files right? Nope, not so. With MAC, there could be only write access to a downloads directory, no execute access except for a whitelist of files, and only append access for the rest. If the exploit tryied to delete anything, it would fail. Can

I understand your point, and that OpenBSD is not a dictatorship and that there are some interested in MAC, but just skeptical, and I have to disagree.

I am quite sure without exception, on the mailing lists on the big debate in 2007 and that insecure article that without exception every lead developer stated that MAC is at best does not offer any additional security, and at worse is false security actually making things worse.

The problem is not a lack of an implementation, but not any implementation will do. It has to be suitable, and meet the OpenBSD project goals.

AppArmour and RSBAC are GPL. Trusted BSD is rather large, relies on some FreeBSDisms, and IMO is overengineered, I think it would be quite a hard sell, but there may be useful ideas. The fact is that even if something useful can be pulled out of Trusted BSD, someone is going to have to put in the time and do it. The reason they might do this, thankless or not, is beca

I understand that any MAC implementation for OpenBSD must of course be compatable and meet OpenBSD guidelines. IMO, that is a secondary problem at the moment. The first problem is that the team of developers are outright hostile and do not understand MAC.

Until that is resolved, no one in their right mind would try and write anything MAC related for OpenBSD. I suspect the developers don't wish to resolve it however, and are happy with their stance.

Your beef about asterisk might be a bad assumption. I build asterisk systems as part of my job. The 1.6 series asterisk has all manner of issues, you'll be wanting to use 1.4.x (1.4.25 or above) if you intend to do production stable system. As it happens, OpenBSD even has binary 1.4.25 package ready to install at a single command.....

And, in the ports (scripting-based system), you have 1.6.0.25. which is considered a more stable of the 1.6.x series, such as it is.

When it came to things like OSPF, BGP, routing, filtering (pf failover) and that sort of networking things, Linux hasn't been the best (though queuing and protocols have had some innovations and dev work).

Anyone have an opinion on this?

For example, Zebra was basically abandoned (it sucked anyway), which now became quagga -- if I wanted a Cisco, I'd get a Cisco. Stop trying to make it a damn emulator.

BGP? I don't even know if there is anything.

iptables is cool, but it just doesn't have failover like pf has (I want people with real-word experience, don't tell me "it's supported" when it's crap.)

I started using OpenBSD at version 2.7 after a few years using various versions of Redhat linux and Mandrake.

I was hooked right away.. It was a lot of things. Maybe the first was the really easy installation process... In my opinion it still might be the simplest out there. There is the well written man pages.. And the simple 'full' installation. It was easy to understand where everything was and it mostly stayed that way from release to release. The config files seemed easy to read and the firewall was really snazzy!

They do some good work! I enjoy using it, even if all I am really doing is small scale hobby work.

The trouble with BSD people in general is that you can't tell if they're trolling (Theo), being trolled (80% of the BSD community are responding to obvious trolls at any one time which is why they advance so slowly,) or they actually believe what they're saying.

Maybe you're the same guy that said he was running the Linux Quake 3 under OpenBSD's Linux emulation and getting a higher framerate? This was on Slashdot quite a few years ago. It was soon pointed out that it really, really, wasn't possible to run th

I run it on an HP T5135 thin client to which I've added usb microdrive, I use it as a domain server (apache and postfix) and also irc client under "screen" to a couple tech channels. Got that thin client used on eBay for $25.

Only pulls 16W of power according to kill-a-watt meter, the only machine at home I leave on constantly.

most would consider openBSD mainly a server OS, though it has the main common desktop wares available as binary packages there are plenty of other open source OS that have more creature comforts for desktop and laptop use (though I carry USB drive with obsd that does work well with my Toshiba Satellite and for any other thing I need to quickly turn into temporary OBSD appliance).

cvs update, patching, compiling doesn't take too long on modern normal GHz hardware though, minutes. On the other hand, doing it

Why use a cheap arm toaster that can be set up in 5 minutes when you can give CISCO a few thousand dollars for a piece of shit?

Because that toaster doesn't provide real support and next-day RMA service. You might work in a small shop, but for people who run multiple datacenters, 100s or 1000s of network devices, and whose jobs rely on uptime this is a no-brainer. I'll take the appliance with the service guarantee, replacements, and track record over a few Dells with *nix running on them.

You are not allowed to replace a $10000 router with a $100 redundant array of consumer hardware because it would make your boss look bad.

I can see why you posted AC. You're out of your depth. Cisco may churn out some real crapware ancillary platforms sometimes, but when it comes to core routing and switching on the big chassis, they're pretty damned reliable.