Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
18 views29 pages

Owasp

Uploaded by

sreeranganadh008
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views29 pages

Owasp

Uploaded by

sreeranganadh008
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

‭OWASP‬

‭OWASP‬‭– Open Web Application Security Project‬

-‭ - It is an international non-profit organization‬


‭-- It provides guidance on how to develop, purchase and maintain‬
‭trustworthy and secure software applications‬

‭ ain Goal:‬
M
‭-- The main goal of owasp is to educate and raise awareness about web‬
‭application security(improving the security of software applications(Secure‬
‭from hackers))‬

‭ ore Principles:‬
C
‭-- All of their materials be freely available and easily accessible on their‬
‭website(It includes documentation, tools, videos & Methodologies to‬
‭pentest)‬
‭-- making it easy possible for anyone to improving their own web‬
‭application security‬

‭ WASP Chapters:‬
O
‭-- Every country conducts meetings at least once in a month – worldwide‬
‭India – Hyderabad, Chennai, Mumbai, Pune & Bengaluru(Most Famous)‬

‭How to Test :‬
‭ esting web application security is crucial to identify and mitigate‬
T
‭potential vulnerabilities and protect against potential threats.‬
‭There are various tools available that can assist in testing web‬
‭application security. Some tools are OWASP ZAP, Burp Suite, Nessus,‬
‭Acunetix etc...‬
‭Here, I'm using the BURP SUITE tool for testing web application‬
‭security.‬
‭Why we choose Burp Suite Tool only:‬
I‭t depends on various factors including the requirements of the testing,‬
‭The expertise of the tester, the specific features needed, and personal‬
‭preferences.‬
‭Here are some reasons why burp suite is commonly used web‬
‭application security testing‬

‭Burp Suite:‬
‭Burp suite is a widely used cyber security testing tool for web‬
‭application security purposes. It includes features like scanning, crawling‬
‭and advanced testing methods to identify security vulnerabilities.‬
‭It is widely used by security professionals, ethical hackers and‬
‭developers to identify, analyze and exploit security vulnerabilities in web‬
‭applications.‬
‭The tool is divided into various modules and features, each serving a‬
‭specific purpose in the web application security assessment process. Here‬
‭are some key components and features of Burp Suite.‬
‭1)Proxy‬‭: It allows users to intercept and inspect‬‭HTTP/S requests and‬
‭responses between the client and web application. It’s crucial for‬
‭understanding how the application functions and identifying potential‬
‭vulnerabilities.‬
‭2)Intercept:‬‭As the user interacts with the web application,‬‭the requests and‬
‭responses are intercepted by proxy. The proxy captures these interactions‬
‭before they reach the target web server and after the server responds‬
‭3)HTTP History:‬‭Typically refers to a record or log‬‭of HTTP requests and‬
‭responses that have been intercepted and captured during a testing or‬
‭browsing session.‬
‭4)Intruder:‬‭It is a module within burp suite that‬‭is used to automate and‬
‭customize attacks against a web application.(Automate and customize‬
‭attacks on application inputs)‬
‭Example:‬

‭ )Install Burp suite tool using :‬


1
‭https://linux.how2shout.com/how-to-install-burp-suite-on-ubuntu-20-04-22-0‬
‭4-lts/‬
‭2)After installing, open Burp Suite Tool to create or open a testing project.‬
‭3)Here we didn’t do any changes directly click on Next‬
‭4)and click Start Burp‬
‭5)We are preparing to utilize the features in burp suite for security testing‬
‭and analysis like this‬
‭6)Now go to Proxy, click on Intercept and enable intercept on to allow the‬
‭interception and analysis of HTTP requests and responses during testing‬
‭7)Now, open browser and enter the URL of the project you intend to test‬
‭8)Now go back to Burp suite, click on HTTP History and review the logged‬
‭HTTP requests and responses for the ongoing testing session and select‬
‭the‬
‭specific response that you intend to test and analyze in detail‬
‭9)Send this request to the intruder for further analysis and testing‬
‭purposes. Now open intruder to proceed‬
‭10)Here we can see position, payload and some other options. By default it‬
‭is on the position. You have to select which type of attack you want to‬
‭perform, choose that and provide the payload accordingly.‬
‭11)Now please disable the URL – encode these characters checkbox to‬
‭ensure safe transmission within HTTP requests‬
‭12)Then click on start attack and click ok now we got some results‬

‭ WASP Top 10:‬


O
‭-- It is incorporated by all organization all over the world during the security‬
‭assessment of their applications as a standard‬
‭-- The report is put together by a team of security experts from all over the‬
‭world‬
‭-- It gets updated every 3-4 years‬
‭-- The first version of the OWASP Top 10 list was published in 2003‬
‭Updates followed in 2004, 2007, 2010, 2013, 2017 & 2021‬
-‭ - Most recent Release of OWASP Top 10 is 2017 & 2021 draft release is‬
‭out‬
‭-- OWASP Top 10 is the list of Top 10 most common application‬
‭vulnerabilities‬
‭-- It shows their risks, impacts and countermeasures‬
‭-- These are assigned the identifier of A01:2021 – A10:2021. Here “A” –‬
‭AppSec, “01” – Its rank in the list and year‬
‭List of 2017 & 2021 OWASP Top 10:‬

‭1)Broken Access Control :‬

‭ roken‬ ‭Access‬ ‭Control‬ ‭refers‬ ‭to‬ ‭a‬ ‭security‬ ‭vulnerability‬ ‭in‬ ‭a‬ ‭web‬
B
‭application‬‭or‬‭system‬‭where‬‭users‬‭can‬‭gain‬‭unauthorized‬‭access‬‭to‬‭certain‬
‭resources,‬ ‭perform‬ ‭actions‬ ‭or‬ ‭assume‬‭roles‬‭that‬‭they‬‭should‬‭not‬‭have‬‭due‬
‭to inadequate or improperly implemented access restrictions.‬

‭ xample‬ ‭:‬ ‭Suppose‬ ‭we‬ ‭are‬ ‭having‬ ‭a‬ ‭web‬ ‭application‬ ‭for‬ ‭an‬ ‭online‬
E
‭marketplace with different user roles : Admin, Seller, Buyer‬
‭Scenarios :‬

‭ )Admin‬ ‭Panel‬ ‭Oversight‬ ‭:‬ ‭The‬ ‭admin‬ ‭panel,‬ ‭intended‬ ‭only‬ ‭for‬
1
‭administrators‬ ‭to‬ ‭manage‬ ‭the‬ ‭website,‬ ‭is‬ ‭accessible‬ ‭to‬ ‭regular‬ ‭buyers‬
‭without‬ ‭proper‬‭controls.(A‬‭regular‬‭buyer,‬‭by‬‭manipulating‬‭the‬‭URL‬‭or‬‭using‬
‭a‬ ‭browser‬ ‭extension,‬ ‭discovers‬ ‭they‬ ‭can‬ ‭access‬ ‭the‬ ‭admin‬ ‭panel‬ ‭and‬
‭modify product listings or user accounts.)‬

‭ )Unauthorized‬ ‭Data‬ ‭Access‬ ‭:‬ ‭The‬ ‭system‬ ‭does‬ ‭not‬ ‭check‬ ‭user‬ ‭roles‬
2
‭when‬ ‭accessing‬ ‭sensitive‬ ‭data,‬ ‭leading‬ ‭to‬ ‭unauthorized‬ ‭access.(A‬ ‭seller,‬
‭without‬ ‭the‬ ‭proper‬ ‭authorization‬ ‭checks,‬ ‭can‬ ‭view‬ ‭or‬ ‭modify‬ ‭the‬ ‭other‬
‭seller’s product listings or gain access to buyers information.)‬

‭ )Inadequate‬ ‭Session‬ ‭Management‬ ‭:‬ ‭Session‬ ‭tokens‬ ‭are‬ ‭not‬ ‭securely‬


3
‭managed,‬ ‭allowing‬ ‭an‬ ‭attacker‬ ‭to‬ ‭hijack‬ ‭another‬ ‭user’s‬ ‭session.(An‬
‭attacker‬ ‭intercepts‬ ‭a‬ ‭session‬ ‭token‬ ‭or‬ ‭discovers‬ ‭a‬ ‭predictable‬ ‭session‬ ‭ID,‬
‭gaining unauthorized access to a legitimate user’s account.‬

I‭n‬ ‭these‬ ‭examples,‬ ‭broken‬ ‭access‬ ‭control‬ ‭allows‬ ‭users‬ ‭to‬‭perform‬‭actions‬


‭or‬ ‭access‬ ‭data‬ ‭that‬ ‭should‬ ‭be‬ ‭restricted‬ ‭based‬ ‭on‬ ‭their‬ ‭assigned‬ ‭roles.‬
‭Implementing‬ ‭proper‬ ‭access‬ ‭controls‬ ‭would‬ ‭mitigate‬ ‭these‬ ‭vulnerabilities,‬
‭ensuring‬‭that‬‭users‬‭only‬‭have‬‭access‬‭to‬‭resources‬‭and‬‭actions‬‭appropriate‬
‭for their roles.‬

‭Differences between Authorization & Authentication :‬

‭Authentication‬ ‭Authorization‬
‭What It Is‬ ‭ he‬
T ‭process‬ ‭of‬ ‭ he‬
T ‭process‬ ‭of‬
‭verifying‬ ‭the‬ ‭identity‬ ‭of‬ ‭granting‬ ‭or‬ ‭denying‬
‭a‬ ‭user,‬ ‭system‬ ‭or‬ ‭access‬ ‭rights‬ ‭and‬
‭entity.‬ ‭permissions‬ ‭to‬
‭authenticated users.‬
‭Goal‬ ‭ o‬ ‭ensure‬ ‭that‬ ‭the‬
T ‭ o‬ ‭determine‬ ‭what‬
T
‭person‬ ‭or‬ ‭a‬ ‭system‬ ‭actions‬ ‭or‬ ‭resources‬ ‭a‬
‭trying‬ ‭to‬ ‭access‬ ‭user,‬ ‭system‬ ‭or‬ ‭entity‬
‭something‬ ‭is‬ ‭who‬ ‭they‬ ‭is‬ ‭allowed‬ ‭to‬‭access‬‭or‬
‭claim to be.‬ ‭perform.‬
‭Example‬ ‭ ogging‬ ‭into‬ ‭an‬ ‭email‬
L ‭ fter‬ ‭logging‬ ‭into‬ ‭an‬
A
‭account‬ ‭by‬ ‭entering‬ ‭a‬ ‭email‬
‭username‬ ‭and‬ ‭account(Authentication‬
‭password‬ ‭),‬ ‭authorization‬
‭determines‬ ‭whether‬
‭the‬ ‭user‬ ‭can‬ ‭read,‬
‭send or delete emails.‬

I‭n‬‭summary,‬‭authentication‬‭is‬‭about‬‭verifying‬‭identity,‬‭while‬‭authorization‬‭is‬
‭about‬ ‭granting‬ ‭or‬ ‭denying‬ ‭access‬ ‭based‬ ‭on‬ ‭that‬ ‭verified‬ ‭identity.‬
‭Authentication‬ ‭is‬ ‭like‬ ‭proving‬ ‭who‬ ‭you‬ ‭are,‬ ‭and‬ ‭authorization‬ ‭is‬ ‭deciding‬
‭what you’re allowed to do once your identity is confirmed.‬

‭Categories :‬‭There are 2 types of categories :‬

‭ )Privilege Escalation‬
1
‭2)Insecure Direct Object Reference‬

‭Privilege Escalation :‬

I‭magine‬ ‭we‬ ‭have‬ ‭a‬ ‭certain‬ ‭level‬ ‭of‬ ‭access‬‭or‬‭permissions‬‭within‬‭a‬‭system‬


‭or‬ ‭application,‬ ‭like‬ ‭a‬ ‭regular‬ ‭user‬ ‭account.‬ ‭It‬ ‭occurs‬ ‭when‬ ‭you‬ ‭somehow‬
‭gain‬ ‭higher‬ ‭level‬ ‭access‬ ‭or‬ ‭permissions‬ ‭that‬ ‭you‬ ‭weren’t‬ ‭originally‬
‭supposed to have.‬

‭Types of privilege escalations :‬

‭ )Horizontal Privilege Escalation‬


1
‭2)Vertical Privilege Escalation‬
‭ )Horizontal‬‭Privilege‬‭EScalation‬‭:‬‭In‬‭this‬‭case,‬‭the‬‭goal‬‭is‬‭to‬‭acquire‬‭the‬
1
‭same‬ ‭level‬ ‭of‬ ‭access‬ ‭but‬ ‭for‬ ‭a‬ ‭different‬ ‭user‬ ‭account.‬ ‭For‬ ‭example,‬
‭switching‬ ‭from‬ ‭one‬ ‭regular‬ ‭user‬ ‭account‬ ‭to‬ ‭another‬ ‭without‬ ‭going‬ ‭up‬ ‭the‬
‭hierarchy.(normal user - normal user)‬

‭ )Vertical‬ ‭Privilege‬ ‭Escalation‬ ‭:‬ ‭This‬ ‭typically‬ ‭happens‬ ‭gaining‬ ‭higher‬


2
‭access‬ ‭levels,‬ ‭such‬ ‭as‬ ‭moving‬ ‭from‬ ‭a‬ ‭regular‬ ‭user‬ ‭to‬ ‭an‬ ‭administrator‬ ‭or‬
‭standard employee to a manager.(normal user - admin)‬

‭ )Insecure‬ ‭Direct‬ ‭Object‬ ‭Reference‬ ‭:‬ ‭In‬ ‭a‬ ‭system‬ ‭there‬ ‭are‬ ‭various‬
2
‭objects(like‬ ‭files,‬ ‭database‬ ‭records‬ ‭or‬‭user‬‭profiles)‬‭and‬‭each‬‭object‬‭has‬‭a‬
‭reference‬ ‭or‬ ‭identifier.‬ ‭Insecure‬ ‭Direct‬ ‭Object‬ ‭Reference‬ ‭involves‬ ‭when‬
‭there’s‬ ‭a‬ ‭flaw‬ ‭in‬ ‭the‬ ‭system‬ ‭that‬ ‭allows‬ ‭a‬ ‭user‬ ‭to‬ ‭access‬ ‭or‬ ‭manipulate‬
‭objects they’re not supposed to by directly referring to them.‬

I‭n‬‭simpler‬‭terms,‬‭privilege‬‭escalation‬‭is‬‭like‬‭finding‬‭a‬‭way‬‭to‬‭get‬‭more‬‭power‬
‭or‬ ‭access‬ ‭than‬ ‭you‬ ‭should‬ ‭have,‬ ‭and‬ ‭insecure‬ ‭direct‬ ‭object‬ ‭reference‬ ‭is‬
‭about‬‭exploiting‬‭flaws‬‭to‬‭access‬‭or‬‭manipulate‬‭things‬‭you‬‭are‬‭not‬‭supposed‬
‭to within a system.‬

‭How to Attack:‬

‭ hen attackers may manipulate inputs, such as modifying a URL or‬


W
‭changing parameters, they may access resources or functionalities directly‬
‭without appropriate authorization. This manipulation can lead to‬
‭unauthorized access to sensitive data or functionalities meant for other‬
‭users, posing a significant security risk.‬

‭Example:‬

‭Set Position:‬
‭Provide Payload:‬
‭Results:‬

‭Prevention Techniques :‬

‭ )Implement proper access controls:‬


1
‭a)Role based Access control: Assign specific roles to users and grant‬
‭access based on those roles.‬
‭b)Attribute based Access control: Use attributes and policies to determine‬
‭access‬
‭c)Ensure principle of least privilege: Grant the least amount of privilege‬
‭necessary for a user to perform their job functions.‬

‭ )Enforce Access controls server side:‬‭validate access‬‭permissions on‬


2
‭the server-side to prevent bypassing client-side controls‬

‭ )Use strong session management:‬‭ensure sessions are‬‭securely‬


3
‭managed and access rights are appropriately checked at each request‬
‭implement proper logout mechanisms to invalidate sessions‬
‭ )Implement Access control checks at the object level:‬‭Utilize server‬
4
‭side checks to validate whether a user has permission to access or modify‬
‭specific objects or data.‬

‭ )Apply Indirect Object References Prevention measures:‬‭Use unique‬


5
‭and hard to guess identifiers rather than exposing direct references to‬
‭objects(id’s) in urls & parameters.‬

‭ )Regular security testing and code reviews:‬‭Conduct‬‭regular security‬


6
‭assessments, penetration testing and code reviews to identify and fix‬
‭potential access control vulnerabilities‬

‭ )Education & Training:‬‭Train developers and other‬‭relevant staff about‬


7
‭secure coding practices, including proper implementation of access‬
‭controls.‬

‭ )Use Access Control lists:‬‭Implement access control‬‭lists to define‬


8
‭permissions and access rules for different users or user groups‬

‭ )Cryptographic Failures(2021-2)/ Sensitive Data Exposure‬


2
‭(2017-3):‬

‭ ailure to properly protect sensitive data, such as passwords, credit‬


F
‭card numbers or personal information which could be exposed to‬
‭unauthorized users.‬
‭It refers to instances where the cryptographic systems or algorithms in‬
‭use fail to provide the intended security and protection against‬
‭unauthorized access, data manipulation or other security breaches. These‬
‭failures can occur due to various reasons, including weaknesses in the‬
‭cryptographic algorithms, poor implementation, key management issues or‬
‭advancements in cryptanalysis techniques.‬
‭Impacts‬‭:‬

‭ )Data Breaches:‬‭Encrypted data may be compromised,‬‭leading to‬


1
‭unauthorized access and potential exposure of sensitive information‬
‭2)Data integrity Compromised:‬‭Tampering with encrypted‬‭data may go‬
‭undetected, undermining the trust and reliability of the information‬
‭3)Loss of confidentiality:‬‭Sensitive data may become‬‭accessible to‬
‭unauthorized parties, violating privacy and confidentiality.‬
‭4)Legal & Compliance issues:‬‭Failure to maintain proper‬‭cryptographic‬
‭security can lead to legal repercussions and non-compliance with‬
‭regulatory standards.‬

‭Example:‬

‭Set Position:‬

‭Results:‬
‭ rotection:‬
P
‭1)Use Strong Algorithms:‬‭Employ well established,‬‭standardized, and‬
‭strong cryptographic algorithms that are resistant to known attacks.‬
‭2)Regular updates & Patching:‬‭Stay updated with the‬‭latest security‬
‭patches and updates for cryptographic libraries and tools to address any‬
‭identified vulnerabilities.‬
‭3)Key management best practices:‬‭Ensure secure key‬‭storage and‬
‭distribution mechanisms. Rotate keys regularly to minimize exposure in‬
‭case of a compromise. Use proper key lengths and randomness for‬
‭generating keys.‬
‭4)Secure Implementation:‬‭Follow best practices and‬‭guidelines for‬
‭implementing cryptographic algorithms to minimize vulnerabilities.‬
‭5)Security Audit & Testing:‬‭Conduct thorough security‬‭audits and testing,‬
‭including penetration testing, code reviews to identify vulnerabilities and‬
‭weaknesses‬
‭ )Monitor & Intrusion Detection:‬‭Implement monitoring and intrusion‬
6
‭detection systems to detect suspicious activities and potential attacks on‬
‭cryptographic systems.‬
‭7)Education & Training:‬‭Train developers & staff involved‬‭in implementing‬
‭and managing cryptographic systems and about best practices, security‬
‭protocol & protection risks.‬
‭8)Backup & Redundancy:‬‭Implement backup & redundancy‬‭mechanisms‬
‭to ensure availability and integrity of cryptographic keys and data.‬
‭9)Incident Response Plan:‬‭Develop a robust incident‬‭response plan to‬
‭efficiency and effectively respond to any cryptographic failures or security‬
‭breaches.‬
‭10)Engage Experts & Consultants:‬‭Seek advice and assistance‬‭from‬
‭experts in cryptography and security to ensure the soundness of our‬
‭cryptographic implementations and systems.‬

‭3)Injection(2017-1, 2021-3):‬
‭Attackers send malicious data as part of a command or query to‬
‭manipulate the application and gain unauthorized access to the system’s‬
‭data or functions.‬
‭These are a type of security flaw that allows attackers to manipulate an‬
‭application's input to execute unintended commands or access‬
‭unauthorized data. This typically occurs in web applications where user‬
‭input is not properly validated or sanitized before being used in the‬
‭application‬

‭Types:‬

‭ )SQL Injection: Attackers inject malicious SQL code into an applications‬


1
‭input fields, tricking the system into executing intended SQL‬
‭commands.This can lead to unauthorized access, data manipulation or‬
‭even data deletion‬

‭Example:‬
‭Set Position:‬

‭Provide Payload:‬
‭Results:‬

‭ )Cross site scripting: Attackers inject malicious scripts into web‬


2
‭applications, which then get executed in the browsers of other users. This‬
‭can lead to theft of users data, session hijacking, or defacements of‬
‭websites.‬
‭3)Command Injection: Attackers inject malicious commands into system‬
‭commands or scripts executed by the application. This can lead to‬
‭unauthorized access to the system, data leakage, or remote code‬
‭execution.‬

‭Protection:‬
‭ )Input Validation & Sanitization:‬‭Validate & sanitize‬‭all user input to‬
1
‭ensure it adheres to accepted formats and does not contain malicious‬
‭code.‬
‭2)Use Parameterized Queries:‬‭Use parameterized queries‬‭or prepared‬
‭statements in database interactions to prevent SQL injection attacks‬
‭ )Avoid Dynamic SQL Queries:‬‭Avoid constructive SQL queries‬
3
‭dynamically based on user input, as this can introduce vulnerabilities.‬
‭4)Least Privilege Principle:‬‭Limit the privileges and‬‭permissions of‬
‭application components to the minimum necessary for their operation. This‬
‭reduces the potential damage that an attacker can cause‬
‭5)Escape Special Characters:‬‭Escape special characters‬‭in user input‬
‭before using them in SQL Queries or HTML to prevent injection attacks‬
‭6)Content security policy:‬‭Implement CSP to mitigate‬‭the risk of cross‬
‭site scripting attacks by specifying which sources of content are allowed to‬
‭be executed in the application.‬
‭7)Regular Security Audits & Code reviews:‬‭Conduct‬‭regular security‬
‭audits and code reviews to identify and fix vulnerabilities, including injection‬
‭issues.‬
‭8)Web Application Firewalls:‬‭Utilize these to filter‬‭and block malicious‬
‭traffic, including attempts at injection attacks.‬
‭9)Education & Training:‬‭Train developers and users‬‭on secure coding‬
‭practices, highlighting the importance of input validation and protection‬
‭against injection attacks.‬
‭10)Security Headers:‬‭Implement security headers such‬‭as‬
‭X-Content-Type-Options, X-Frame-Options, X-XSS-Protection to enhance‬
‭the security of our web application.‬

‭A04-2021: Insecure Design:‬

I‭nsecure design is a vulnerability that occurs when the overall plan or‬
‭structure of a system or application has weaknesses or flaws that can be‬
‭exploited by attackers. It’s like having a building with a poorly thought-out‬
‭floor plan or weak foundation, making it easier for burglars to break in or for‬
‭the building to collapse.‬

‭In the context of computer systems :‬

‭ )Flawed Architecture :‬‭Imagine a website without‬‭proper security checks,‬


1
‭allowing anyone to access sensitive information without proper‬
‭ uthorization. This is an example of insecure design where the architecture‬
a
‭of the system doesn’t adequately protect valuable data.‬

‭ )Weak boundaries :‬‭Insecure design might involve‬‭poorly defined‬


2
‭boundaries between different parts of a system. If these boundaries are‬
‭unclear or easily bypassed, it becomes easier for attackers to manipulate‬
‭or compromise the system.‬

‭ )Lack of Encryption :‬‭If a system doesn’t use encryption‬‭to protect data‬


3
‭during transmission, it’s vulnerable to eavesdropping. It’s like sending a‬
‭postcard instead of a sealed letter - anyone who intercepts it can read the‬
‭contents.‬

‭ ddressing insecure design involves creating a robust and well-thought-out‬


A
‭plan for how a system should function securely, considering aspects like‬
‭user access, data protection, and communication security.‬

‭Attacks on insecure designs can take various forms:‬

‭ . **Injection Attacks:** Malicious code is inserted into a system, such as‬


1
‭SQL or JavaScript, giving the attacker control.‬

‭ . **Broken Authentication and Session Management:** Flaws allow‬


2
‭attackers to steal or hijack session tokens for unauthorized access.‬

‭ . **Sensitive Data Exposure:** Vulnerabilities permit access to sensitive‬


3
‭data like passwords or personal information.‬

‭ . **Insecure Direct Object References:** Attackers bypass proper‬


4
‭channels to directly access objects, potentially leading to unauthorized‬
‭actions or data access.‬

‭To prevent insecure designs:‬


‭ . **Security Threat Modeling:** Identify and assess potential security‬
1
‭threats early in the design process to address flaws.‬

‭ . **Follow Secure Coding Practices:** Adhere to guidelines for writing‬


2
‭secure code to prevent common design flaws.‬

‭ . **Comprehensive Testing:** Employ both manual and automated testing‬


3
‭to thoroughly evaluate all aspects of a system.‬

‭ . **Vulnerability Management:** Continuously identify, assess, and fix‬


4
‭vulnerabilities in a system.‬

‭Additionally, consider these practices:‬

-‭ **Security by Default:** Enable all security features by default, requiring‬


‭users to opt out if necessary.‬

-‭ **Least Privilege:** Grant users only the permissions they need to perform‬
‭their tasks.‬

-‭ **Simplicity:** Avoid overly complex systems, as they can be harder to‬


‭secure.‬

-‭ **Use Established Patterns and Frameworks:** Trusted patterns and‬


‭frameworks have been vetted by security experts.‬

-‭ **Seek Expert Feedback:** Have security experts review designs before‬


‭implementation.‬

‭ y following these practices, you can prevent insecure designs and‬


B
‭enhance the security of your systems.‬
‭Ex:‬

‭5)Security Misconfiguration(6-2017, 5-2021):‬


‭ ecurity misconfiguration refers to the improper setup or configuration of a‬
S
‭system, application, or network, which leaves it vulnerable to unauthorized‬
‭access, data breaches, or other security risks. It occurs when security‬
‭settings or protections are not properly implemented, or default‬
‭configurations are not changed, exposing potential weaknesses.‬

‭**Examples of Security Misconfiguration:**‬

*‭ 1. **Default Credentials:** Leaving default usernames and passwords‬


‭unchanged for applications, databases, or network devices, making it easy‬
‭for attackers to gain unauthorized access.‬

‭ . **Unnecessary Services:** Running unnecessary services or ports that‬


2
‭are not required for the system's operation, providing additional attack‬
‭vectors.‬

*‭ 3. **Improper Access Controls:** Failing to set up proper access controls,‬


‭allowing users or processes to have more privileges than necessary.‬

*‭ 4. **Unrestricted Directory Listing:** Allowing directory listings on web‬


‭servers, which can reveal sensitive information about the system's file‬
‭structure.‬

‭ . **Excessive Information Disclosure:** Providing verbose error messages‬


5
‭that reveal too much information about the system, which can be exploited‬
‭by attackers.‬

‭ . **Lack of Encryption:** Not using encryption for sensitive data in transit‬


6
‭or at rest, making it susceptible to interception or theft.‬

‭**How Attacks Exploit Security Misconfigurations:**‬

‭ . **Enumeration and Scanning:** Attackers can use tools to scan for open‬
1
‭ports, services, and vulnerabilities in improperly configured systems.‬
‭ . **Brute Force Attacks:** Default credentials or weak passwords can be‬
2
‭exploited through automated brute force attacks.‬

‭ . **Directory Traversal:** Improperly configured web servers can allow‬


3
‭attackers to navigate to directories they shouldn't have access to.‬

‭ . **Information Leakage:** Overly verbose error messages can reveal‬


4
‭information about the system's configuration, which attackers can use to‬
‭their advantage.‬

‭**Preventing Security Misconfiguration:**‬

‭ . **Regular Audits and Assessments:** Conduct regular security audits‬


1
‭and assessments to identify and rectify misconfigurations.‬

‭ . **Utilize Security Tools:** Employ automated scanning tools that can‬


2
‭detect common misconfigurations.‬

‭ . **Follow Secure Configuration Guides:** Refer to security guidelines‬


3
‭provided by the software or system vendors to ensure proper setup.‬

‭ . **Access Controls and Least Privilege:** Apply strong access controls‬


4
‭and grant users the minimum level of privileges needed to perform their‬
‭tasks.‬

‭ . **Patch and Update Systems:** Keep software, applications, and‬


5
‭operating systems up-to-date to ensure they have the latest security‬
‭patches.‬

‭ . **Disable Unnecessary Services:** Turn off or remove any services,‬


6
‭ports, or functionalities that are not required for the system's operation.‬

‭ . **Use Strong Authentication:** Avoid default or weak credentials and‬


7
‭implement multi-factor authentication where possible.‬
‭ y addressing security misconfigurations, organizations can significantly‬
B
‭reduce the risk of unauthorized access and data breaches, creating a more‬
‭robust and secure environment.‬
‭ )Vulnerable & Outdated Components(6-2021) / Using‬
6
‭Components with known vulnerabilities(9-2017) :‬

‭ )Broken Access Control‬


1
‭2)Cryptographic Failures‬
‭3)Injection‬
‭4)Insecure Design‬
‭5)Security Misconfiguration‬
‭6)Vulnerable and outdated components‬
‭7)Identification and authentication failures‬
‭8)Security Logging and Monitoring Failures‬
‭9)Clickjacking‬
‭10)CSRF(Cross-Site Request Forgery)‬
‭11)SSRF(Server Site Request Forgery)‬
‭12)CORS‬
‭13)DOM‬
‭14)HTTP Request Smuggling‬
‭15)Software & Data Integrity Failures‬
‭16)Cross - Site Scripting(XSS)‬
‭17)Insecure Deserialization‬
‭18)API Testing‬

‭ erialization, Deserialization‬
S
‭Hashkey‬
‭Ports‬
‭CORS‬
‭DOM‬
‭Encryption, Decryption‬
‭Git‬

‭ )store‬
1
‭2)‬

‭ it clone‬
G
‭Git branch‬
‭Git checkout branchname‬
‭Git status‬
‭Git add .‬
‭Git status‬
‭Git commit -m “”‬
‭Git branch‬
‭Git pull origin branchname‬
‭Git push origin branchname‬
‭Git log‬
‭Git merge‬

‭Git‬

-‭ > storage purpose‬


‭-> version control‬
‭-> multiple member‬

‭ it init‬
G
‭Git status‬
‭U - untracked‬
‭A - add‬
‭M - modify‬

‭ it add filename - single file‬


G
‭Git add . / git add –all - multiple files‬

‭ it clone url‬
G
‭Git‬

‭ 9 – owasp introduction, owasp top 10 vulnerabilities, why choose‬


2
‭burp suite & how to use it , vulnerability assessment & Penetrating‬
‭testing(VAPT)‬
‭30 – holiday‬
‭1 – broken access control, cryptographic failures, security‬
‭misconfiguration‬
‭2 – insecure design, vulnerability & outdated components‬
‭3 – Identification & Authentication failures, security logging &‬
‭monitoring failures, clickjacking, injection(cross site scripting),‬
‭4 – Doubts explanation, audit report‬
‭5 – CSRF, SSRF‬
‭6,7 – holidays‬
‭8 – Document Review, Modifications in Document‬
‭9 – Doubts Clarification, Session‬
‭10 – Explain what is Cross Origin Resource Sharing(CORS)‬
‭11 – Practical Testing on CORS using Burp suite‬
‭12 – Discuss Previous Topics, GIT‬
‭13 - Practice on owasp and common vulnerabilities‬
‭14 - holiday‬
‭15 - Mobile Application Security Testing‬
‭16 - Postman installations‬
‭17 - GIT, Postman API Testing‬
‭ 8 - DOM Based vulnerabilities, Insecure Deserialization, Software‬
1
‭and Data Integrity Failures penetration testing, Assign projects‬
‭19 - Audit Report‬

‭A08-2021: Software and Data Integrity Failures :‬

‭Software Integrity Failures :‬

‭Description :‬

I‭t happens when the software you use is tampered with or altered without‬
‭permission. (Hackers add or modify parts of the software to make it do bad‬
‭things ). This can happens through‬

‭ ompromised Updates :‬‭When updates to your software‬‭come from‬


C
‭untrusted sources or are tampered with, they can introduce harmful‬
‭changes.‬

‭ ntrusted third party components :‬‭Using software‬‭libraries or‬


U
‭components from sources that may have been tampered with.‬

‭ xample :‬
E
‭-> Imagine you are baking a cake and someone secretly adds a harmful‬
‭ingredient into your recipe.‬
-‭ > Download game update - if the update is from a fake or‬
‭compromised source, it might include a virus that harms your‬
‭computer.‬

‭Data Integrity Failures :‬


‭Description :‬

I‭t occurs when the information stored or transmitted is changed or‬


‭tampered with. (Hackers alter or corrupt data to deceive or harm)‬
‭Unprotected Data Transmission :‬‭If data is sent over‬‭the internet‬
‭without proper authorization or security measures, it can be‬
‭intercepted and changed‬

I‭nsecure Data Storage :‬‭If data is not stored securely,‬‭it can be‬
‭accessed and altered by unauthorized people.‬

‭ xample :‬
E
‭-> Imagine sending a letter to a friend but someone intercepts it,‬
‭changes the content and then sends it on.‬
‭-> send a message to your friend. If someone intercepts the message‬
‭and changes it before it reached to your friend thats a data integrity‬
‭failure‬

‭Preventions :‬

‭ )Verify Sources : Always download software and updates from‬


1
‭trusted sources.‬
‭2)Use security measures : Encrypt data to protect it during‬
‭transmission and use secure storage methods.‬
‭3)Regular Checks : Regularly check and verify that your software and‬
‭data have not been altered‬
‭Insecure Deserialization :‬

‭ erialization :‬‭The process of converting an object‬‭or data structure into a‬


S
‭format that can be easily stored or transmitted.‬

‭ x : packing box - toy have many parts - disassemble - put all parts in box‬
E
‭- write instructions label on box - send‬

‭ eserialization :‬‭It converts the serialized format‬‭back into its original‬


D
‭object or data structure‬

‭Ex : unpacking box - reassemble toy‬

‭Insecure Deserialization :‬

I‭t's a security issue that happens when an application takes serialized data‬
‭from an untrusted source and converts it back into its original form without‬
‭properly checking or validating the data. This can lead to serious problems‬
‭if the data has been tampered with by attackers.‬

‭ xample : Imagine you receive a package (serialized data) from a friend‬


E
‭and you don’t know what’s inside. You just open it (deserialization) without‬
‭checking if it’s safe. If someone had secretly put a harmful device inside the‬
‭package, it could cause problems when you open it. Similarly, with insecure‬
‭deserialization, if an application blindly trusts and processes data from an‬
‭untrusted source, attackers can exploit this to introduce malicious code or‬
‭perform unauthorized actions‬

‭ revention‬‭: Use safer serialization formats (like‬‭JSON), validate and‬


P
‭sanitize data, and handle errors properly to prevent security issues.‬

‭DOM based vulnerabilities :‬


‭ hese are security issues that occur due to insecure processing or‬
T
‭manipulation of data within the Document Object Model (DOM) on the‬
‭client side (in the browser). They typically result from inadequate validation‬
‭or sanitization of user input before it's used or displayed on a web page.‬
‭Examples‬‭:‬

‭ ross-Site Scripting (XSS)‬‭: Attackers inject malicious‬‭scripts into web‬


C
‭pages that execute in other users' browsers, potentially stealing data or‬
‭performing unwanted actions.‬

‭ RL Manipulation‬‭: Attackers modify URL parameters‬‭to inject malicious‬


U
‭content into the page or trigger unintended behavior.‬

You might also like