No matter what language is used when coding, there are common errors that can lead to big problems, if they’re not dealt with early. These coding errors can result in severe breaches in security and unstable platforms, costing time, effort and money to repair.
The Dangers of Coding Errors
Recently, even big companies like Sony have suffered from programming errors requiring extensive fixes to protect their customer’s private information online. One small error in the coding required the removal of part of the Sony PlayStation Network. Users were asked to reset their passwords and cancel their credit cards as the result of hackers accessing an exploitable security flaw.
Each language has its own set of parameters and issues, but common coding errors are common for one reason – everyone makes them. The trick is to recognize them and resolve them early in the programming process.
Here are some of the most common types of coding errors in the major coding languages:
The three most common coding errors in Visual Basic are syntax, run-time and logic errors.
Syntax: These errors involve typographical and grammar errors made when writing code. Repairs are relatively simple can be remedied immediately.
Run-time: After the code is compiled and ready to run, these errors show up when the code refuses to execute. In this case, the erroneous code needs to be identified and rectified. The entire process is then run and tested again before going live.
Logic: Logic errors can cause the most headaches because they won’t appear until the program is in use. They’re also difficult to correct because it is difficult to determine their origin.
C and C++
Coding errors in C and C++ not only affect the initial product, but are inherited by subsequent coders. The most common errors are made in the following areas:
• Memory and resource management
• Program data management
• Buffer overflows
• Concurrency violations
• Vulnerable coding practices
• Platform support
• Long-term maintenance support
In addition to concurrency violations and resource management, Java presents a set of unique challenges to the coder. Areas of concern include:
• Web application weaknesses
• Unconfirmed user input
• Device-specific coding practices
• JSP interactions
• Invalid object references
• Improper collection usage
Other serious, yet common coding error involves cross-site scripting, and improper authorizations, which can lead to insider data breaches. Cross-site scripting is the result of a compromised web page and can involve attacks against the web server itself. as Another common issue is SQL injection. SQL Injection is the result of not following a key best practice in handling user input: Always assume data input is hostile, define specific patterns that are safe, and only allow the input to be processed if it matches one of the safe patterns.
System downtime and security flaws are the inevitable results of code errors, but they’re not the only negative side effects. Erroneous output, reputation loss, and/or loss of customer goodwill are all likely possibilities.
Better security measures must start with correcting the most common coding errors. Follow the best practices set out for the language to keep things secure and clean. Try to keep things simple; the more complex you get, the more opportunities there are to make mistakes. Most importantly, however, stay educated and up to date on the mistakes and security dangers that lie ahead.