Common Security Issues Checklist For and Web services - International Days

International Days

Internationally important Days


Home Top Ad

Post Top Ad

Friday, 13 October 2017

Common Security Issues Checklist For and Web services

· Session Expiry – 
Issue: Even after a user logs out from the client side, the user session persists in the server.
Solution: Whenever a user logs out of the client side (Mobile application OR Web application), the session should expire in the server also.

· Session Validation – 
Issue: Session validation is not implemented properly in many projects. As a result, a logged in user can modify the data of another user.
Solution: “Logged in user – Session” validation should be implemented correctly.

· Authorization – 
Issue: Authorization and User role validations are not implemented correctly, especially in Web applications that have multiple user roles.
Solution: All Web pages / Screens / Web service methods / Ajax calls, etc. should implement the logic for User role validation.

· Error Handling – 
Issue: Error Pages / Broken links reveal confidential server information like SQL Query, Server details, Username, Password etc. to the end-user.
Solution: Make sure that sensitive data is not revealed to the end-users. Display user-friendly messages to the end-user. Please refer to the Exception Handling Best Practice Guidelines.

· Data Validation – 
Issue: Validation for input data is missing from the server side. Client side validation may be there but that is not enough to handle request tampering through a Man-in-the-middle attack.
Solution: Server side validation is mandatory.

· Payment Gateway integration– 
Issue: Due to the lack of proper validation, in most cases, it is possible to change the Amount field.
Solution: Validation is mandatory at all the stages (Before and After payment). 

· Missing Unique key constraints 
Issue: In many cases, Unique key constraints are missing from the database level, which results in duplicate records.
Solution: Unique key constrains should be implemented at the database level.

· Web service without session validation 
Issue: Web services without session validation are resulting in Spam records.
Solution: Always be aware of the fact that web service calls or form submissions without session validation will create spam records in the database. Try to avoid such calls.

· Storing sensitive information as plain text 
Issue: Sensitive information like Username, Password, Credit card details, etc. is not encrypted.
Solution: All sensitive data should be encrypted in the server and client side. It is better to avoid storing credit card information.

· Common encryption key 
Issue: A common encryption key is used throughout all the projects in MOPL. If an attacker gets this key, all the projects developed by MOPL will be vulnerable.
Solution: Avoid using the same encryption key in all the projects. Don’t use weak keys. 

· Presence of non-functional code  
Issue: Non-functional code, methods, classes, etc. used for the purpose of development can cause security issues, if they are present in a production environment.
Solution: Remove all unused code from production.

· Disabling / Hiding controls from client side 
Issue: When a control is disabled or hidden from the client side, the corresponding logic / validations are not updated in the server side. This results in security threats.
Solution: Whenever there is a change in client side controls, make sure that the corresponding logic in the backend is also updated.

· Auto complete field enabled for password 
Issue: Auto-complete, when enabled for the Password field, leads to security issues.
Solution: Make sure that autocomplete attributes are disabled for sensitive fields like Password, Credit card details, etc.

No comments:

Post a Comment

Post Bottom Ad