Re: Coding Practice [was Re: Serious OpenSSL vulnerability]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 9 April 2014 17:19, Tim <ignored_mailbox@xxxxxxxxxxxx> wrote:
> Only the other day I was thinking similarly:  That almost every exploit
> that I read about, over the last umpteen years, was a buffer overflow;
> and why is it so?  Are programmers such morons that they accept all data
> without care, rather than only accept what you actually expect?


No. It's because the entire world of modern computing is built on C, a
programming language that is a sort of portable assembly-language but
with pointer arithmetic, a language so brain-dead that it lets you
assign element 31 in an array of 30 elements, or write to the 42nd
character of a 40-character string. And which encourages programmers
to arithmetically manipulate pointers to data in memory directly,
which compels programmers to do their own memory-management manually.

All more mature, reliable languages have features that check accesses
and disallow direct pointer manipulation. And once, there were
programming languages whose basic features were atoms and lists, not
bits and bytes, and they ran on chips that natively understood atoms
and lists and where things like memory overruns and underruns were
therefore unheard-of.

Unfortunately, in the 1980s, when chips and RAM were really expensive,
what succeeded commercially were really simple, fast languages (like
C) and really simple, fast chips (like x86 and RISC) and all the
better, more powerful chips and languages disappeared or were
marginalised.

So now, what we have are the cheap'n'nasty machines and software of
the 1970s and 1980s, but vastly upgraded in speed and capacity, and
the /good/ computers and software, the ones that enabled people to be
tens to hundreds of times more productive, are all gone.

I was just ranting about this /right before/ the Heartbleed thing became public:


-- 
Liam Proven * Profile: http://lproven.livejournal.com/profile
Email: lproven@xxxxxxxxx * GMail/G+/Twitter/Flickr/Facebook: lproven
MSN: lproven@xxxxxxxxxxx * Skype/AIM/Yahoo/LinkedIn: liamproven
Tel: +44 20-8685-0498 * Cell: +44 7939-087884
-- 
users mailing list
users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe or change subscription options:
https://admin.fedoraproject.org/mailman/listinfo/users
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
Have a question? Ask away: http://ask.fedoraproject.org




[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [EPEL Devel]     [Fedora Magazine]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Desktop]     [Fedora Fonts]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Fedora Sparc]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux