Free Newsletters
InfoWorld Daily

InfoWorld
Log-in | Register
SECURITY ADVISER  

Discipline is one answer to the security question

The evolution of C and its offspring is the source of -- and the solution for -- secure coding concerns

By P.J. Connolly
November 26, 2004
 

Last week, I noted that integrating application technologies into an operating system without due regard for security -- as Microsoft did with Internet Explorer and Windows -- was a recipe for trouble. I left off on what some readers may consider to be an uneven note by appearing to take Microsoft off the hook.

Free IT resource

Virtualization Insights from Top Experts - Learn how virtualization gets real!

Sponsored by Dell

Free IT resource

TechNet: More ways to know it, share it, and keep it running.

Sponsored by Microsoft

Well, I have my reasons. Remember that operating systems and applications don't simply appear. Someone has to write the code, line by line. A high percentage of that coding is done in the C language and its derivatives. For those who don't know their history, C has been with us for what in computing terms amounts to eons.

DISCLAIMER: I am not a programmer, by inclination, trade, or training. I am going to grossly simplify or even omit some details in order to tell the story in my allotted space. Deal with it.

Thirty-five years ago, a team at what was then AT&T's Bell Labs was developing what we now know as Unix. Ken Thompson created the "B" language in response to a need for a programming tool -- it seems Fortran wasn't cutting the mustard.

B had its problems as well; compiled programs ran so slowly that programming in assembly language was worth the headache. B also lacked a "typing" scheme that would handle characters, byte-addressing, and floating-point operations. Dennis Ritchie developed C between 1971 and 1973 to address these shortcomings.

Perhaps a more appropriate name would have been "kudzu," because since 1973, C has taken over the computing world, with the help of its offspring, C++. An awful lot of applications are written in a C-derived language, as are most modern operating systems.

As languages go, the C family is not terribly difficult to work with -- remember, someone who can't program his way out of a wet paper bag writes this column -- and its ubiquity means most programmers and many system administrators are familiar with it.

C and its derivatives are so powerful that it's easy to write sloppy code that doesn't manage system resources properly. But with a little discipline when it comes to checking data input and allocating memory, programs written in C-type languages are the next best thing to bulletproof. That's the key to secure code: discipline.

The problem is that there's a lot of code floating around -- call it legacy or call it below-the-radar -- that isn't clean and secure. Whether it's a one-off routine or a snippet buried in a code library that's used by developers around the world, the process of completely fumigating C-based software may well be hopeless but that's not going to stop people from trying to do so, and thank heaven for those folks.

(Props to Jeff Duntemann, whose recent SD Times column on software monoculture got me thinking at a level I usually ignore.)





 


 
P.J. Connolly is a senior contributing editor to the InfoWorld Test Center.
 

TOP NEWS:


»  Four quick tips for choosing an IM security product
71 percent of businesses will invest in real-time messaging this year. If you're one of them, be sure to protect your enterprise

»  Forrester analysts ID hot IT jobs
Research group finds 16 IT roles with a promising future

»  Nvidia claims 10 hours of HD video on Tegra chip
The Tegra 600 and 650 can be used with hard disk drives and are designed partly for mobile Internet devices

»  Database vendors add Google's MapReduce
Greenplum and Aster Data Systems will support Google's programming technique, developed for parallel processing of large data sets across commodity hardware

»  Network management: Tips for managing costs
New technologies, changing requirements, and ongoing equipment maintenance and upgrades cost money, but there are ways to manage expenses

»  EMC targets SMBs, branch offices with new low-end storage
Celerra NX4 highlights include thin provisioning, snapshot technology for data recovery and backups, and Web-based console for management of storage volumes




REMOTE ACCESS: MAINTAIN SECURITY AND DECREASE THE BURDEN ON IT
Join this interactive webcast to discover how IT Managers can control access rights, end-user security settings and end-point authorization. Sponsor: Citrix(R) GoToMyPC(R) Corporate

»  Click here to view this Webcast
  WAN Emulation Sponsored Solutions Guide
WAN emulation technology enables IT organizations to predict reliably how applications will perform in a networked environment, before application rollout, mitigating development risk and costs.This Sponsores Solutions Guide has everything you need to now about WAN emulation and WAN and how to best implement it in your organization. Sponsored by Shunra

»  Click here to download now

- Special Advertising Partners -
WHITE PAPERS
 

» Technology White Papers Library

Technology White Papers by Topic

Technology White Papers E-mail Alert

Find out when the latest white paper is available:
 
 
INFOWORLD MARKETPLACE
 
» BUY A LINK NOW
 

FIND PRODUCTS AND COMPANIES
» COMPLETE PRODUCT GUIDE



TECHNOLOGY INDEX
• Applications
• Application Development
• Security
• Networking
• Wireless
• Platforms
• Hardware
• Data Management
• Storage
• Web Services
• Business
• Telecom
• Professional Services
• Standards

TECH WATCH 


What's the 411 on GOOG-411?
Just as Google has become synonymous with "performing a Web search," 411 is understood to mean "information" -- as in "what's the 411?" I was thus surprised to discover, from a billboard, no less, that the king of search is taking on the ...

Apple HTML source reveals 'iPhone Extreme'
"This one's a stretch..." reports AppleInsider. Um, yeah. Reporting on HTML code sightings of product names could be called a stretch, but iPhone Extreme has a ring to it. Now, that sounds like the product Apple should have released first, rather ...

COLUMNISTS

Unified under law
Ephraim Schwartz's Column and Blog (InfoWorld) - In the litigious world we live in, deploying a unified communications platform in your enterprise could...
» MORE COLUMNISTS

MORE INFOWORLD BLOGS


Open Sources 
Product Management
When I joined MySQL four years ago, there was quite a lot of debate about product management. We didn't actually have ...

Zero Day 
Botnet herders tending smaller flocks
New research backs up the theory that botnet operators are keeping their networks smaller in a continued effort to keep ...



• Advice Line
• Database Underground
• The Deep End
• Enterprise Mac
• Geeks in Paradise
• Grid Meter
• The Gripe Line
• InfoWorld Daily
• Inside IT
• IT Troubleshooter
• ITXtreme
• Open Sources
• ProdBlog
• Real World SOA
• Reality Check
• Security Adviser
• SMB IT
• The Storage Network
• Tech Watch
• Virtualization Report
• Zero Day

ADVERTISEMENT


RESOURCE CENTERadvertisement 

GOVERNMENT IT & POLICY
'If you don't go after the network, you're never going to stop these guys. Never.'
From the State Department, All the News for Inquiring Minds
TechPresident, the Internet Citizenry's New Consensus Taker



Sponsored Technology Links

 
 
 HOME  NEWS  BLOGS  PODCASTS  VIDEOS  TECHNOLOGIES  TEST CENTER  EVENTS  CAREERS   About | Advertise | Awards | RSS | Contact Us 

Copyright © 2008, Reprints, Permissions, Licensing, IDG Network, Privacy Policy, Terms of Service.
All Rights reserved. InfoWorld is a leading publisher of technology information and product reviews on topics including viruses,
phishing, worms, firewalls, security, servers, storage, networking, wireless, databases, and web services.

CIO :: ComputerWorld :: CSO :: Demo :: GamePro :: Games.net :: IDG Connect :: IDG World Expo
Industry Standard :: IT World :: JavaWorld :: LinuxWorld :: MacUser :: Macworld :: Network World :: PC World :: Playlist