{"id":21547833,"url":"https://github.com/deadkennedyx/fishhunt","last_synced_at":"2025-04-10T05:53:03.616Z","repository":{"id":215342688,"uuid":"738703550","full_name":"DeadKennedyx/FishHunt","owner":"DeadKennedyx","description":"Machine learning + malicious sites scanner for phishing detection","archived":false,"fork":false,"pushed_at":"2024-01-04T21:15:41.000Z","size":9293,"stargazers_count":10,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-24T07:07:08.648Z","etag":null,"topics":["cybersecurity","infosec","machine-learning","machinelearning","phishing","scam","tools"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DeadKennedyx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2024-01-03T21:08:55.000Z","updated_at":"2024-08-02T17:32:41.000Z","dependencies_parsed_at":"2024-01-03T22:24:28.736Z","dependency_job_id":"85527123-242c-4e35-8e88-27d6365afe49","html_url":"https://github.com/DeadKennedyx/FishHunt","commit_stats":null,"previous_names":["deadkennedyx/fishhunt"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeadKennedyx%2FFishHunt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeadKennedyx%2FFishHunt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeadKennedyx%2FFishHunt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeadKennedyx%2FFishHunt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DeadKennedyx","download_url":"https://codeload.github.com/DeadKennedyx/FishHunt/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248166927,"owners_count":21058480,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cybersecurity","infosec","machine-learning","machinelearning","phishing","scam","tools"],"created_at":"2024-11-24T06:16:25.017Z","updated_at":"2025-04-10T05:53:03.590Z","avatar_url":"https://github.com/DeadKennedyx.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"```                                                                                          \n            :                             -.                                        \n           -:                           :*%: :                                      \n           +                     ..::::+%%%*#%-=                                    \n          :-                :=+#%%%%%%%%%%%%%%%%#%-=-                    :.         \n          +              :+%%%%%%%%%%%%%%%%%%%%%%%%%%#--              :=##          \n        -%%:           -#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+#:        .=#%%%-          \n        #%%.         .*%%%%%-  :#%%%%*%%%%%%%%%%%%%%%%%%%%%+:   .-*%%%%%%.          \n       .##=          -#%%%%%.  .#%%%%%-%%%%%%%%%%%%%%%%%%%%%%%++%%%%%%%%+           \n        #.         .   :*%%%%##%%%%%%%-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%.           \n       -+         =#     .=%%%%%%%%%%%+-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+           \n       *:        :-%.     .=%%%%%%%%%%=:%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%=          \n       ==         :*    -*%%%%%%%%%%%%--%%%%%%%%%%%%%%%%%%%%%%#++*#%%%%%%%-         \n        *=      .=*   -%%%%%%%%%%%%%%%.*%%%%%%%%%%%%%%%%%%%#+:      ..:-=+*.        \n         :++===++:     =%%%%%%%%%%%%%*=%%%%%%%%%%%%%%%%%*=.                         \n                        .=%%%%%%%%%%%#%%%%%%%%%%%%%#*=:                             \n                           -+#%%%%%%%%%%%%%%%%#*=-.                                 \n                              .-==++*+#%%#-:.                                       \n                                       +%%.                                         \n                                         :-\n\n                            FISHHUNT BY DEADKENNEDYX\n```\n\n\nAs of right now FishHunt is a GMAIL phishing detection system, uses a machine learning model trained on 5000 phishing emails and 5000 non-phsishing emails. \n\nIt also uses [MalTrail](https://github.com/stamparm/maltrail?tab=readme-ov-file#blacklist) list of malicious domains that is updated every day and checks the urls in the emails for any of those malicious urls.\n\n### Appreciation\nIf you are cloning dont forget to give me a little star!\n\n### USAGE:\n\n1- `pip3 install -r requirements.txt`.\n\n2- Copy and paste your credentials.json in the root folder from your google oauth client, file name must be `credentials.json`\n\n2- Go to `/FishNet` and run `python3 email_training.py`, this will start the model training with the legal and phishing emails `.mbox`.\n\n3- We will have now 2 file outputs after running the email_training `phishing_model.pkl` and `vectorizer.pkl`, move this files to the root folder.\n\n4- Now go to root folder and run `python3 main.py`, if you have not been logged in before then it will open a browser tab with the gmail auth page\n\n5- After logging in it will create a `token.json` file in the root folder which will be used for further runs of the script without needing to log in each time you run it\n\n5- By default it checks your last 100 emails, you can modify the script `phishing_detection.py` to increase the default, or implement websockets/push-notifications for live tracking\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeadkennedyx%2Ffishhunt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeadkennedyx%2Ffishhunt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeadkennedyx%2Ffishhunt/lists"}