Python-Based Model for SQL Injection and Web Application Security

 
A Python-Based Network Traffic Detection Model
 
SQL INJECTION & WEB APPLICATION SECURITY:
 
ABSTRACT
 
The Internet of Things (IoT) presents a great many challenges in cybersecurity as the world grows more
and more digitally dependent. Personally identifiable information (PII) (i,e,. names, addresses, emails,
credit card numbers) is stored in databases across websites the world over. The greatest threat to privacy,
according to the Open Worldwide Application Security Project (OWASP) is SQL injection attacks
(SQLIA) [1]. In these sorts of attacks, hackers use malicious statements entered into forms, search bars,
and other browser input mediums to trick the web application server into divulging database assets. A
proposed against such exploitation is convolution neural network modeling. We have written a proof of
concept
, Python-based 
program that takes advantage of the PyTorch package’s built-in convolution
layered modeling classes. The model has been trained on a dataset of four known classifications and
after reaching maturity underwent blind validation on a separate dataset 1000 times. The model was able
to reach up to 81% accuracy by correctly reporting the packet classification. We believe the same
behavior can be mapped to malicious SQLIA in other datasets by marking features in web traffic with
abnormally large packet sizes, network errors, and unrecognized server responses. The research
presented herein serves to corroborate related research in the field employing similar neural network and
deep learning techniques to today’s greatest threat to cybersecurity.
 
OUTLINE
 
 
Background
 Dataset & Methods
 Hyperparameters & Training
 Blind Testing
 Implications
 
BACKGROUND
 
 Web Application Vulnerability
Database Security & SQL
 SQL Injection Attacks (SQLIA)
 
EXAMPLE: COMMENT INJECTION
 
n include() which accepts a PHP file and enables the server to run the code in that file.
[1] SELECT
 * 
FROM
 users 
WHERE
 username =
 
$USERNAME 
AND password = $PASSWORD
;
[2] 1 or 1=1; #
[3] 
SELECT
 * 
FROM
 users 
WHERE
 username = 
1
 
or
 
1
=
1
; # AND password = $PASSWORD;
 
DATASET & METHODS
 
 Flow Sequence Network (FS-Net)
 Neural Network Machine Learning
 PyTorch Library
 Sequence Regression
 Gradient Descent
 
HYPERPARAMETERS & TRAINING
[1] 
batch_size
 = 
260
[2] 
learning_rate
 = 
0.001
[3] 
num_epochs
 = 
8
0
[4] 
drop_rate
 = 
0.001
 
HYPERPARAMETERS & TRAINING
 
Figure 1: Loss Penalty for Training Model
 
Figure 2: Accuracy for Training Model
 
BLIND TESTING
 
81% Average
Accuracy on 1000
Tests
 
Figure 3: Boxplot of Accuracy after Validation
 
CONCLUSIONS & IMPLICATIONS
 
 Proof of concept
 SQLIA can be marked by:
 Abnormally large packets
 Network errors
 Unrecognized server responses
Requires further research
Slide Note
Embed
Share

The research focuses on combating SQL injection attacks in web applications using a Python-based neural network model. By training the model on a dataset and conducting blind testing, it achieved up to 81% accuracy in detecting malicious network traffic. This innovative approach aims to enhance cybersecurity in the face of evolving threats like SQLIA.

  • Python
  • SQL Injection
  • Web Security
  • Neural Network
  • Cybersecurity

Uploaded on Mar 13, 2024 | 2 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. SQL INJECTION & WEB APPLICATION SECURITY: A Python-Based Network Traffic Detection Model

  2. ABSTRACT The Internet of Things (IoT) presents a great many challenges in cybersecurity as the world grows more and more digitally dependent. Personally identifiable information (PII) (i,e,. names, addresses, emails, credit card numbers) is stored in databases across websites the world over. The greatest threat to privacy, according to the Open Worldwide Application Security Project (OWASP) is SQL injection attacks (SQLIA) [1]. In these sorts of attacks, hackers use malicious statements entered into forms, search bars, and other browser input mediums to trick the web application server into divulging database assets. A proposed against such exploitation is convolution neural network modeling. We have written a proof of concept, Python-based program that takes advantage of the PyTorch package s built-in convolution layered modeling classes. The model has been trained on a dataset of four known classifications and after reaching maturity underwent blind validation on a separate dataset 1000 times. The model was able to reach up to 81% accuracy by correctly reporting the packet classification. We believe the same behavior can be mapped to malicious SQLIA in other datasets by marking features in web traffic with abnormally large packet sizes, network errors, and unrecognized server responses. The research presented herein serves to corroborate related research in the field employing similar neural network and deep learning techniques to today s greatest threat to cybersecurity.

  3. OUTLINE Background Dataset & Methods Hyperparameters & Training Blind Testing Implications

  4. BACKGROUND Web Application Vulnerability Database Security & SQL SQL Injection Attacks (SQLIA)

  5. EXAMPLE: COMMENT INJECTION [1] SELECT * FROM users WHERE username = $USERNAME AND password = $PASSWORD; [2] 1 or 1=1; # [3] SELECT * FROM users WHERE username = 1 n include() which accepts a PHP file and enables the server to run the code in that file. or 1=1; # AND password = $PASSWORD;

  6. DATASET & METHODS Flow Sequence Network (FS-Net) Neural Network Machine Learning PyTorch Library Sequence Regression Gradient Descent

  7. HYPERPARAMETERS & TRAINING [1] batch_size = 260 [2] learning_rate = 0.001 [3] num_epochs = 80 [4] drop_rate = 0.001

  8. HYPERPARAMETERS & TRAINING Figure 1: Loss Penalty for Training Model Figure 2: Accuracy for Training Model

  9. BLIND TESTING 81% Average Accuracy on 1000 Tests Figure 3: Boxplot of Accuracy after Validation

  10. CONCLUSIONS & IMPLICATIONS Proof of concept SQLIA can be marked by: Abnormally large packets Network errors Unrecognized server responses Requires further research

More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#