Paper • Website • Video • Citation
This is the official implementation of "Inferring Phishing Intention via Webpage Appearance and Dynamics: A Deep Vision-Based Approach"USENIX'22 link to paper, link to our website
Existing reference-based phishing detectors:
The contributions of our paper:
Input
: a screenshot, Output
: Phish/Benign, Phishing target
Step 1: Enter Abstract Layout detector, get predicted elements
Step 2: Enter Siamese Logo Comparison
Return Benign, None
Step 3: CRP classifier
Return Benign, None
Step 4: CRP Locator
Return Benign, None
Step 5:
Return Phish, Phishing target
Return Benign, None
|_ configs: Configuration files for the object detection models and the gloal configurations
|_ modules: Inference code for layout detector, CRP classifier, CRP locator, and OCR-aided siamese model
|_ models: the model weights and reference list
|_ ocr_lib: external code for the OCR encoder
|_ utils
|_ configs.py: load configuration files
|_ phishintention.py: main script
Requirements:
Create a local clone of PhishIntention
git clone https://github.com/lindsey98/PhishIntention.git
cd PhishIntention
Setup
chmod +x setup.sh
export ENV_NAME="phishintention" && ./setup.sh
conda activate phishintention
Run
python phishintention.py --folder <folder you want to test e.g. datasets/test_sites> --output_txt <where you want to save the results e.g. test.txt>
The testing folder should be in the structure of:
test_site_1
|__ info.txt (Write the URL)
|__ shot.png (Save the screenshot)
|__ html.txt (HTML source code, optional)
test_site_2
|__ info.txt (Write the URL)
|__ shot.png (Save the screenshot)
|__ html.txt (HTML source code, optional)
......
Please consider citing our work :)
@inproceedings{liu2022inferring,
title={Inferring Phishing Intention via Webpage Appearance and Dynamics: A Deep Vision Based Approach},
author={Liu, Ruofan and Lin, Yun and Yang, Xianglin and Ng, Siang Hwee and Divakaran, Dinil Mon and Dong, Jin Song},
booktitle={30th $\{$USENIX$\}$ Security Symposium ($\{$USENIX$\}$ Security 21)},
year={2022}
}
If you have any issues running our code, you can raise an issue or send an email to liu.ruofan16@u.nus.edu, lin_yun@sjtu.edu.cn, dcsdjs@nus.edu.sg