Earlier quoted context omitted.
> Until about 10 years ago, hand crafted Assembler was still faster than C, and the speed improvements were actually needed. It still is, especially when it comes to vectorization.
And in other areas, but that's largely because C isn't expressive enough, not because we lack the engineering know-how to compile fast vectorisation code.
OpenSSL Security Advisory
101–110 of 112 posts
Re: OpenSSL Security Advisory
#102Earlier quoted context omitted.
> Until about 10 years ago, hand crafted Assembler was still faster than C, and the speed improvements were actually needed. It still is, especially when it comes to vectorization.
And in other areas, but that's largely because C isn't expressive enough, not because we lack the engineering know-how to compile fast vectorisation code.
Re: OpenSSL Security Advisory
#103Earlier quoted context omitted.
It certainly wasn't when I was Security Officer -- it didn't exist yet. I believe some people are working on bringing libressl into the FreeBSD base system, but there are some challenges; for example, FreeBSD supports stable branches for 5 years, while libressl follows OpenBSD's "break everything once a year" model.
Could be biased, but I think we're more careful about bundling breaking changes in security patches though.
Re: OpenSSL Security Advisory
#104Earlier quoted context omitted.
> Use a language that makes a bunch of security flaws impossible The implicit assumption here is that the language isn't at the same time introducing a number of other vulnerabilities. Is there a language you would like to suggest?
"Actually, more static analysis makes things less secure" That is a preposterous argument.
Re: OpenSSL Security Advisory
#105Earlier quoted context omitted.
What never ends? Low severity memory safety bugs in a large C codebase? Probably not. You may think this is a lot. It's not. This largely appears a lot because OpenSSL treats a lot of very low impact issues as vulnerabilities. A lot of other projecs would rather start arguing that this is not exploitable, should never get a CVE etc. This is a good sign. OpenSSL is taking security seriously by treating even low impact…
Exactly. With C, it will effectively never end. Libraries like that would probably benefit most from using a language with strict static analysis, like Rust. Tools Of similar nature for C do exist, but probably they are harder to apply, and likely not free.
Re: OpenSSL Security Advisory
#106Earlier quoted context omitted.
Integer overflow checking, for example.
Integer overflow cannot result in memory safety violations in Rust.
Re: OpenSSL Security Advisory
#107Earlier quoted context omitted.
> It's been shown over and over again that secure C coding is possible and doable and feasible and exists in the real world. Some of the most secure software is written in C, and that's not attributed to enough fingers banging at a keyboard over a C program, but because C forces the programmer that _wants_ to write a secure program think about all the issues, the universe and everything. This reasoning doesn't make s…
> Use a language that makes a bunch of security flaws impossible The implicit assumption here is that the language isn't at the same time introducing a number of other vulnerabilities. Is there a language you would like to suggest?
Re: OpenSSL Security Advisory
#108Earlier quoted context omitted.
Integer overflow cannot result in memory safety violations in Rust.
But it can overflow, which will result in a different value that the programmer might expect, which can give an attacker a nice "information leak" or worse. This could be a security bug!
And even wrt memory, Rust (with the standard library) is not free of its own warts, see the OOM situation. See e.g https://news.ycombinator.com/item?id=10545877 for a discussion on this.
Just to be clear: I generally like the ideas of Rust. I just dislike its presentation by some as a magic solution to all kinds of concerns.
Re: OpenSSL Security Advisory
#109My first reaction: This never ends, does it? Second reaction: Security is notoriously hard, nice that people are looking at the code and being thorough, it's for the collective best.
I maintain a project ( http://freeradius.org ) which a similar amount of code, and (arguably) similar complexity. While we've had issues, they aren't as numerous as OpenSSL. And, the issues in the latest major version are negligible. Why? We have a requirement for code quality. The code can't just work, it has to make sense. The OpenSSL people don't seem to care about badly formatted and/or non-understandable code. A…
With all respect to your project, I bet wider adoption of OpenSSL and consequently more interest from "interested" parties plays a bigger part here.
Re: OpenSSL Security Advisory
#110Earlier quoted context omitted.
I would posit another reason you don't have as many issues; you don't have as many people trying to find them. I think it is pretty foolhardy to assume that just because security issues haven't been found means they don't exist.
There's definitely some truth to this, FreeRADIUS is just not that valuable of a target since not many people have RADIUS exposed to the world, however if you look at other highly valuable targets like OpenSSH, which is probably in the top 10 if not the most valuable target in the world, you see far fewer significant exploits. It's definitely possible to have better quality than OpenSSL and a lot of OpenSSL's issues…
https://www.openssl.org/news/secadv/20160926.txt
No one can reasonably say that the practices of the OpenSSL programmers result in secure code. No one can reasonably say that lots of people examining it later for defects is a good idea.
We have lots of legacy code in C. The only sane way to maintain it is tests: unit tests, functional tests, and static code analysis.
> a lot of OpenSSL's issues are due to legacy code
i.e. the OpenSSL people don't care to actively maintain / clean up their software.
What a depressing statement to make.