Skip to content

A Website made with python and django, that classifies an URL according to its lexical features, using Random Forest.

Notifications You must be signed in to change notification settings

Diego-Luiz/URLYZER

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 

Repository files navigation

URLYZER

URLYZER is a website that classifies an URL as benign or malicious, according to the Random Forest classificator and the URL lexical features extracted. This project was presented as Information Systems final paper in Bachelor's degree, at Universidade Federal de Mato Grosso do Sul, Brazil 🇧🇷, 2021.

Website Folder 📁

This folder contains all the files about the website.

> How to run the project

Make sure you have Python installed in your computer (in this project the version used was 3.9.5). After following the steps below:

1. Create a folder to this project and put the urlyzer folder inside it.

  1. Install the python virtual environment in your computer and create one, after that you can active the virtual environment. You can see more about it here.

3. With the virtual environment activated and in the right path of the urlyzer folder, install all the requirements used in this project.

pip install -r requirements.txt

4. Modify the settings.py inside urlyzer folder putting the host(s) you want to run the server. In the line 28 (you can edit this parameter putting the allowed host(s) to run the project):

ALLOWED_HOSTS=['127.0.0.1']

5. Now you can run the django server with the command:

python manage.py runserver --insecure

The parameter --insecure is needed because of the parameter DEBUG setted asFalse.

> How URLYZER works

According to the URL string put in the home page the site analyzes and classifies it as benign or malicious, putting a web page according to the classification. In the respective page you can come back to the start or go ahead and access the website related to the input.

Observation ⚠️

If your choice was to access the website represented by the URL, URLYZER will try to access a website with the exactly URL string given. Then make sure it's in the right form.

AI Folder 🖿

In this folder are the files about the python modules used to build the classificator model, some datasets, the main jupyter notebook about the training, test and results process, and the final classificator model used in the project.

> Datas 🗀

Contains the main datasets used to training and test the classificator model.

> Jupyter notebook 🗀

Contains the main jupyter notebook used in the project.

> Python modules 🗀

The python modules used during the project.

> Random Forest classificator 🗀

The folder containing the final classificator model used in the project.

URLYZER Screenshots 📷

Homepage

image

Benign URL ✔️

image

Malicious URL ❌

image

image

Related Technologies

The technologies used to build the website are in the requirements.txt file. Besides that some others are related:

About

A Website made with python and django, that classifies an URL according to its lexical features, using Random Forest.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published