- TalkBack 11 of 30:
- Next »
- « Previous
- Thread View
- Flat View
- Quoth Barbie: "Web dev is tough!"
-
Here's the problem folks: web developers are too busy baking in new features, while remaining woefully uneducated with basic programming techniques. Make no mistake about it: this is a flaw in Perl. I love Perl to pieces, used it for years. But read this article closely. There is a flaw in Perl within the string formatting functions that allows the user to control your system, if certain input is passed into it. In the case of Webmin, this software passes a string directly from the user to the formatting function, allowing a user of the Webmin program to exploit the Perl flaw.
Web development is probably one of the most difficult programming jobs out there, while appearing to be extremely easy. Unlike a desktop application, the programmer has zero control over anything that happens to the data before it gets to the server. You can put in all of the JavaScript checking that you want, it does not matter. You can have your form fields limit the size of the data, it does not matter. All it takes is for someone with a telnet client to pass arbitrary data to your software.
With that in mind, it is far too easy for a web developer to simply say 'SELECT * FROM SCHEMA.DATABASE WHERE ID' = . $_GET['id_code'] and guess what happens with the user passes an "ID Code" of "0 AND 1 = 1" ? They get all database results. Let's make it worse. Change that "ID Code" to "0 AND 1 = 1; DROP TABLE SCHEMA.DATABASE;". Boom, your database is gone. This is known as a SQL injection attack. This kind of thing is NOT, I repeat, NOT discussed in your computer science courses! It is NOT mentioned in the help files of your compiler! It is rarely mentioned!
The primary, number one rule for any, ANY web development project is: Never. Trust. The. Input. Period.
I cannot stress that enough. The people who wrote Webmin obviously forgot it. Modern web application frameworks completely expose the user's input to you, without a tainting mechanism. They count on you, the developer, to properly examine that input and determine if it is malicious input based upon the context that you will be using it in.
There are simply too many second rate programmers releasing software that has enough functionality to make them widely adopted, but are so poorly written that anyone with some time on their hands and a bit of knowledge could drive a truck through the application and destroy it, user's data, and possibly take over the entire server. The Web 2.0 crowd, the AJAX crowd, all of the SaaS crowd, the thin client crowd, all of these people need to wake up to this fact. Web application frameworks and web application development techniques are still in their infancy, and by-and-large are not ready for enterprise-class computing.
J.Ja - Posted by: Justin James Posted on: 11/30/05 You are currently: a Guest | Members login | Terms of Use
What do you think?
SponsoredWhite Papers, Webcasts, and Downloads
- Building the Virtualized Enterprise with VMware Infrastructure VMware VMware virtualization software has been adopted by over 120,000 enterprise ... Download Now
- Three Steps You Need to Know to Stop Data Loss Varonis Sensitive data exposed to misuse or loss... it is the stuff of nightmares ... Download Now
- Why Isn't Server Virtualization Saving Us More? A Few Small Changes May Dramatically Increase Your Efficiency VMware Companies have rapidly adopted server virtualization over the past few ... Download Now
Premier Vendor Content Whitepapers, webcasts & resources from our Power Center Sponsors
- Microsoft Dynamics CRM Online - Free Six-Month Trial for Eligible Organizations
-
Microsoft Dynamics CRM Online provides fast online access, simple contact management and better sales performance for a low monthly cost - the best value on the market today.

- Learn more about the free, six-month trial offer>>
- Reduce risk. Reduce complexity. Increase reliability.
-
A simplified IT environment isn't just less complex. It's also more reliable. Standardize on a single Linux platform with SUSE Linux Enterprise from Novell, and get the world's most interoperable Linux
- Learn more >>
- New Online Dashboard for IT Leaders
-
Read about top issues IT decision-makers face every day, plus get cost-effective solutions to real-life IT problems.
- Learn more >>












