Report Prob
Report Prob
A MINI PROJECT
REPORT ON
This is to certify that the Project Report titled “WEB BASED VULNERABILITY
SCANNER” is a Bonafide work carried out by Ms. Afreen Zohra (USN 1RG22CS010),
Ms. Aneesha Shil (USN 1RG22CS016), Ms. Faiza Siddique (USN 1RG22CS031) and Ms.
Keshavathi Kumari (USN 1RG22CS042) in partial fulfilment for the award of Bachelor of
Engineering in Computer Science and Engineering of the Visvesvaraya Technological
University, Belagavi, during the year 2024-2025. It is certified that all
corrections/suggestions given for Internal Assessment have been incorporated in the report.
This project report has been approved as it satisfies the academic requirements in respect of
project work prescribed for the said degree.
External viva
2.
VISVESVARAYA TECHNOLOGICAL UNIVERSITY
Jnana Sangama, Belgavi-590018
DECLARATION
We hereby declare that the project work entitled “WEB BASED VULNERABILITY
SCANNER” submitted to the Visvesvaraya Technological University, Belagavi
during the academic year 2024-2025, is record of an original work done by us under the
guidance of Mrs..Deepti N N, Assistant Professor, Department of Computer Science
and Engineering, RGIT, Bengaluru in the partial fulfilment of requirements for the
award of the degree of Bachelor of Engineering in Computer Science &
Engineering. The results embodied in this project have not been submitted to any other
University or Institute for award of any degree or diploma.
We take this opportunity to thank our college Rajiv Gandhi Institute of Technology,
Bengaluru for providing us with an opportunity to carry out this project work.
We extend our sincere thanks to Dr. Arudra A, Associate Professor and HOD,
Department of Computer Science and Engineering, RGIT, Bengaluru, for being a pillar of
support and encouraging us in the face of all adversities.
We would like to acknowledge the thorough guidance and support extended towards us by
Mrs. Bhagyashri Wakde, Assistant Professor, Dept. of CSE, RGIT, Mrs. Soniya Komal
V, Assistant Professor, Dept. of CSE, RGIT, Bengaluru, Mrs. Kavyashree, Assistant
Professor, Dept. of CSE, RGIT, Bengaluru, Mrs. Geetha Pawar, Assistant Professor,
Dept. of CSE, RGIT, Bengaluru and Mrs. Deepti Murali, Assistant Professor, Dept. of
CSE, RGIT, Bengaluru. Their incessant encouragement and valuable technical support
have been of immense help. Their guidance gave us the environment to enhance our
knowledge and skills and to reach the pinnacle with sheer determination, dedication and
hard work.
We also want to extend our thanks to the entire faculty and support staff of the Department
of Computer Science and Engineering, RGIT, Bengaluru, who have encouraged us
throughout the course of the Bachelor’s Degree. We want to thank our family for always
being there with full support and for providing us with a safe haven to conduct and
complete our project. We are ever grateful to them for helping us in these stressful times.
Lastly, we want to acknowledge all the helpful insights given to us by all our friends during
the course of this project
i
ABSTRACT
This project presents the development of a web-based vulnerability scanner designed to detect critical security
flaws in websites. The scanner focuses on three major vulnerabilities: SQL Injection, Cross-Site Scripting
(XSS), and Open Redirects. The tool operates by allowing users to input a URL, select the type of vulnerability
to scan, and receive detailed results, including risk level, vulnerability presence, and relevant URL information.
Developed using Python(flask) modules for backend processing and HTML, CSS, and JavaScript for the
frontend, the scanner provides a user-friendly interface with real-time feedback. The project emphasizes
enhancing web security by providing website owners with actionable insights to prevent attacks. The system
also integrates an adaptive AI algorithm to improve detection accuracy. This tool aims to serve as an accessible
and efficient solution for developers and website administrators looking to secure their web applications. The
user experience is enhanced through a clean, responsive dashboard that adapts to different devices and screen
sizes. The scanner’s results are presented in an organized manner, detailing the vulnerability status and the
specific nature of each issue. Additionally, the scanner offers suggestions for remediation to help users address
identified security risks. The project demonstrates the importance of proactive vulnerability scanning in
securing websites and reducing the risk of cyberattacks. By providing an intuitive and automated solution, the
scanner makes it easier for non-expert users to improve their website’s security posture.
ii
CONTENTS
Chapter 4 Methodology
4.1 Requirement analysis
4.2 Design and architecture 10
4.3 Deployment
4.4 Testing 11
4.5 Deployment
4.6 Maintenance and update
4.7 Key features 12
4.8 Validation and iteration
Chapter 5 Snapshots 14-17
Conclusion 28
Bibliography 27
ii
WEB BASED VULNERABILITY
SCANNER
CHAPTER 1
1.1 INTRODUCTION
In the rapidly evolving landscape of cybersecurity, web applications have become frequent targets for
malicious activities due to their accessibility and integration with critical business processes. Ensuring the
security of these applications is paramount to protect sensitive data, maintain user trust, and comply with
regulatory standards.
A web-based vulnerability scanner is a specialized tool designed to automate the detection of security
weaknesses in websites, web applications, and associated components. It systematically analyses the
architecture, configurations, and codebase of web applications to identify vulnerabilities such as SQL injection,
Cross-Site Scripting (XSS), insecure authentication mechanisms, and outdated dependencies.
Web-based scanners are indispensable for organizations striving to maintain a robust security posture. They
offer the following advantages:
• Comprehensive Coverage: Scans multiple layers of web applications, including server configurations,
application logic, and third-party dependencies.
• Time Efficiency: Automates the vulnerability assessment process, significantly reducing the time
needed for manual inspections.
• Prioritized Risk Management: Categorizes vulnerabilities by severity, enabling organizations to
address critical issues promptly.
• Compliance Assistance: Supports adherence to industry standards such as OWASP
In today’s rapidly evolving digital landscape, web applications are increasingly targeted by malicious actors
due to their widespread adoption and exposure on the internet. As more businesses move their operations
online, web applications become prime targets for cyberattacks, which can result in significant financial losses,
data breaches, and reputational damage. Organizations are continuously grappling with a growing number of
sophisticated threats such as SQL injection, cross-site scripting (XSS), cross-site request forgery (CSRF), and
other vulnerabilities that compromise the security of their online platforms.
The challenge lies in identifying these vulnerabilities proactively, before they can be exploited by attackers.
Traditional security audits, though essential, are time-consuming, often requiring specialized expertise and
manual intervention. Furthermore, these audits tend to be reactive, typically identifying vulnerabilities only
after an attack has occurred. This leaves organizations vulnerable during the interim, with potentially
catastrophic consequences. As web applications become more complex, the task of manually identifying and
fixing vulnerabilities becomes even more daunting, especially when organizations are under pressure to release
updates quickly.
Another key issue is that many small-to-medium-sized enterprises (SMEs) lack the financial and technical
resources to deploy or maintain enterprise-grade security solutions, which are often expensive and difficult to
manage. These organizations may not have dedicated security teams, making it challenging to ensure ongoing
vigilance against emerging threats. Without affordable and efficient solutions, these businesses remain at risk,
potentially jeopardizing their data and customer trust.
Therefore, there is an urgent need for automated, accessible, and cost-effective vulnerability scanning solutions
that can help organizations detect and mitigate vulnerabilities at an early stage. Such solutions would not only
help in identifying common vulnerabilities like SQL injections, XSS, and open redirects but also provide
actionable insights and remediation advice for non-expert users, enabling businesses to bolster their security
posture investment.
1.3 OBJECTIVES
Automate Vulnerability Detection: Enable automated scanning to identify common web application
vulnerabilities like SQL injection, XSS, and CSRF.
Enhance Accessibility: Provide an easy-to-use platform that is suitable for both technical and non-
technical users.
Deliver Actionable Insights: Generate clear, prioritized reports with recommendations for addressing
vulnerabilities.
Ensure Cost-Effectiveness: Offer a scalable solution with flexible pricing to accommodate organizations
of all sizes.
Support Continuous Updates: Regularly update the scanner to detect emerging threats and adapt to
new web technologies.
Facilitate Proactive Security: Empower organizations to identify and fix vulnerabilities before they
can be exploited by attackers.
Promote Scalability: Allow for seamless integration and scalability to support a wide range of applications
and infrastructures.
Improve Security Awareness: Educate users on vulnerabilities and best practices to strengthen overall
CHAPTER 2
2.1 LITERATURE SURVEY
Key Insight: Many vulnerabilities arise due to inadequate input validation, poor coding practices, and outdated
libraries.
• Hybrid Testing: Combines SAST and DAST for more comprehensive coverage, though it can be
resource-intensive
1. Limited Accuracy
• False Positives: Scanners may flag safe elements as vulnerabilities, leading to unnecessary
remediation efforts.
• False Negatives: Some vulnerabilities might go undetected, particularly zero-day exploits or those
requiring complex exploitation techniques.
2. Incomplete Coverage
• Many scanners are unable to detect vulnerabilities in:
o Custom-built applications with unique logic.
o Applications using proprietary technologies or configurations.
o Vulnerabilities in third-party integrations or dependencies.
3. Dependency on Updates
• Scanners need regular updates to identify new vulnerabilities and threats. If updates lag, the tool may
fail to detect recent exploits or techniques.
4. Resource Intensity
• Frequent scanning can consume significant system resources, potentially slowing down applications
during scans.
• High-performance systems are required to handle large-scale or complex applications.
5. Lack of Context
• Automated scanners often lack the ability to fully understand the business logic of an application,
missing vulnerabilities tied to logic flaws.
• They may not prioritize issues effectively for the specific risk environment of an organization.
6. Over-Reliance on Automation
• Organizations may overly rely on scanners and neglect manual testing, which is crucial for identifying
nuanced vulnerabilities and complex exploits.
• Tools cannot replace human expertise, especially for advanced threat scenarios.
CHAPTER 3
2 Burp Suite High, with Strong Comprehensive Widely used, Paid version
fast active HTTPS error reporting detailed required for
scanning with detailed reports, advanced
support with
options feedback flexible features
custom
scanning
settings
options
automation
CHAPTER 4
METHODOLOGY
The methodology outlines a structured approach for designing, developing, and deploying a web-based
vulnerability scanner. It focuses on achieving automation, user-friendliness, and scalability while ensuring
comprehensive detection capabilities.
• Understand key security challenges, such as common vulnerabilities (OWASP Top 10, CWE).
• Define project goals: automation, cost-effectiveness, user-friendly interface, and actionable insights.
• Core Components:
1. Scanner Engine: Performs vulnerability assessments using dynamic application security testing
(DAST).
2. User Interface (UI): Develop an intuitive interface for configuring scans, viewing results.
4 .3 Development
• Scanner Development:
o Implement detection modules for common vulnerabilities (e.g., SQL injection, XSS).
• Security Integration:
4.4 Testing
• Functional Testing: Ensure all scanner features (e.g., vulnerability detection, reporting) work as
intended.
• Accuracy Testing:
4.5 Deployment
• Deploy the scanner on a secure cloud platform with appropriate scalability (e.g., AWS, Azure, GCP).
• Offer different pricing tiers (e.g., free basic scanning, premium for advanced features).
• Regular Updates: Continuously update the vulnerability database with new threats.
• Customer Feedback: Gather feedback to improve usability and add new features.
• Threat Intelligence Integration: Use feeds from security databases like CVE
• Education Tools: Offer in-app tips and resources to improve user understanding of vulnerabilities.
• Run the tool in real-world scenarios across different industries and application types.
• Iterate based on test results and customer feedback to ensure continuous improvement
CHAPTER 5
SNAP SHOTS
About Page
Contact Page
List of specific vulnerabilities option to scan (such as SQL injections and open redirect)
Website with no vulnerabilities detected such as google (scan for SQL injections)
CHAPTER 6
SOURCE CODE:
app.py
app = Flask(_name_)
CORS(app)
app = Flask(_name_)
# Example Flask route allowing POST requests
@app.route('/submit', methods=['POST'])
def submit_form():
return "Form submitted!"
xss_payloads = [
"<script>", "</script>", "onerror=", "alert(", "<img src=", "<iframe", "document.cookie",
"eval("
]
if response.status_code == 200:
data = response.json()
headquarters = data.get("org", "Unknown Headquarters")
else:
headquarters = "Unknown Headquarters"
except Exception as e:
return {"ip_address": "Unknown", "headquarters": "Unknown", "error": str(e)}
@app.route('/')
def home():
return render_template('index.html') # Render your HTML file
@app.route('/scan', methods=['POST'])
def scan():
url = request.form.get('url')
vulnerability = request.form.get('vulnerability')
if not url:
return jsonify({"error": "URL is required"})
try:
# Get URL details
url_details = get_url_details(url)
return render_template(
'index.html',
scan_result=scan_result,
url_details=url_details,
vulnerability_summary=vulnerability_summary
)
except Exception as e:
return render_template('index.html', error=str(e))
if _name_ == '_main_':
app.run(debug=True)
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Armor Scan</title>
<script src="https://cdn.tailwindcss.com"></script>
<link href="https://fonts.googleapis.com/css2?family=Courier+Prime&display=swap"
rel="stylesheet">
<style>
body {
font-family: 'Courier Prime', monospace;
}
.hidden {
display: none;
}
</style>
</head>
<body class="bg-gradient-to-r from-blue-500 via-purple-600 to-pink-500 min-h-screen flex flex-col
items-center justify-center text-white">
<div class="container mx-auto p-8 bg-black bg-opacity-80 rounded-lg shadow-2xl max-w-
4xl">
<div class="header text-center mb-8">
<h1 class="text-5xl font-extrabold mb-6">Armor Scan</h1>
<nav class="text-lg">
<a href="javascript:void(0);" onclick="showPage('home')" class="hover:text-blue-300
mx-4">Home</a> |
<a href="javascript:void(0);" onclick="showPage('about')" class="hover:text-blue-300
mx-4">About</a> |
<a href="javascript:void(0);" onclick="showPage('contact')" class="hover:text-blue-
300 mx-4">Contact</a>
</nav>
</div>
</ul>
</div>
<div class="mt-6">
<h4 class="text-xl font-semibold">URL Details:</h4>
<p><strong>Headquarters:</strong> {{ url_details['headquarters'] }}</p>
<p><strong>IP Address:</strong> {{ url_details['ip_address'] }}</p>
</div>
<div class="mt-6">
<h4 class="text-xl font-semibold">Vulnerability Summary:</h4>
<p><strong>Risk Level:</strong> {{ vulnerability_summary['risk_level'] }}</p>
</div>
{% endif %}
<!-- Error Message -->
{% if error %}
<div class="mt-6 text-red-400">
<p><strong>Error:</strong> {{ error }}</p>
</div>
{% endif %}
</div>
</div>
<p>Phone: +1-800-ARMOR-SCAN</p>
</div>
JAVASCRIPT:
<script>
// Function to show different pages (Home, About, Contact)
function showPage(page) {
const pages = document.querySelectorAll('.page');
pages.forEach((p) => p.classList.add('hidden'));
document.getElementById(page).classList.remove('hidden');
}
</script>
CONCLUSION
1. Enhanced Cybersecurity: Increases overall security for web applications, protecting sensitive data
fromcyber threats.
2. User Trust: Builds consumer confidence in online platforms through reliable vulnerability assessments.
3. Proactive Risk Management: Enables organizations to identify and remediate vulnerabilities
before theycan be exploited.
4. Awareness and Education: Raises awareness about web security issues, encouraging best practices
amongdevelopers and users.
5. Support for Compliance: Assists businesses in meeting regulatory requirements for data
protection andcybersecurity standards.
Bibliography
2. [1] O. B. Al-Khurafi and M. A. Al-Ahmad, ‘‘Survey of web application vulnerability attacks,’’ in Proc.
4th Int. Conf. Adv. Comput. Sci. Appl. Technol. (ACSAT), Dec. 2015, pp. 154–158.
3. [2] M.S.Hossain, A. Paul, M. H. Islam, and M. Atiquzzaman, ‘‘Survey of the protection mechanisms
to the SSL-based session hijacking attacks,’’ Netw. Protocols Algorithms, vol. 10, no. 1, pp. 83–108,
Apr. 2018.
Other references:
1. Shelly, David Andrew. "Using a Web Server Test Bed to Analyze the Limitations of Web Application
Vulnerability Scanners." Thesis, Virginia Tech, 2010. http://hdl.handle.net/10919/34464.
2. Swarup, Shivam, and Dr R. K. Kapoor. "Web Vulnerability Scanner (WVS): A Tool for detecting Web
Application Vulnerabilities." International Journal of Engineering Research 3, no. 2 (February 1, 2014):
126–31. http://dx.doi.org/10.17950/ijer/v3s2/219.
3. Maini, Rahul, Rahul Pandey, Rajeev Kumar, and Rajat Gupta. "AUTOMATED WEB
VULNERABILITY SCANNER." International Journal of Engineering Applied Sciences and
Technology 4, no. 1 (May 31, 2019): 132–http://dx.doi.org/10.33564/ijeast.2019.v04i01.022.
4. Mahajan, Vijay Bhagwan. "Web Application Vulnerability Scanner." International Journal for Research
in Applied Science and Engineering Technology 7, no. 6 (June 30, 2019): 386–90.
http://dx.doi.org/10.22214/ijraset.2019.6066.
5. Chen, Jingxia, Xiuling Chen, and Bo Yu. "Design of web vulnerability scanner based on go
language." MATEC Web of Conferences 336 (2021): 08010.
http://dx.doi.org/10.1051/matecconf/202133608010.