Giter Site home page Giter Site logo

actually-akac / sinkingyachts Goto Github PK

View Code? Open in Web Editor NEW
15.0 3.0 1.0 306 KB

A C# library for detecting Discord/Steam phishing links using the Sinking Yachts API.

Home Page: https://www.nuget.org/packages/SinkingYachts

License: MIT License

C# 100.00%
phishing anti-phishing anti-scam discord phish scam steam sinking-yachts

sinkingyachts's Introduction

Sinking Yachts ๐ŸŸ

A C# library for detecting Discord/Steam phishing links using the Sinking Yachts API.

Warning
Sinking Yachts is currently in the process of being discontinued and replaced with the upstream Fish Fish API. Expect this library to eventually become archived and marked as deprecated. Daily statistics have already been shut down.

Usage

Available on NuGet as SinkingYachts, methods are available under the public class YachtsClient.

https://www.nuget.org/packages/SinkingYachts

Features

  • Made with .NET 6
  • Fully async
  • Access to a Discord-related phishing database of over 15 500 confirmed malicious domains
  • Regex matching of domains and automatic phishing detection
  • Different modes for storing and loading phishing domains
  • Instant updates through WebSocket events
  • Domain whitelisting to decrease false positives
  • Customizable caching to decrease load

Example Project

Under the Example directory you can find a working demo Discord bot that implements this library.

07.09. 19:13:59 [Discord] Discord.Net v3.8.0 (API v9)
07.09. 19:13:59 [Gateway] Connecting
07.09. 19:14:01 [Gateway] Connected
07.09. 19:14:02 [Bot] Ready to protect your server from 15601 phishing domains
07.09. 19:14:02 [Bot] Domains added within the past day: 8
07.09. 19:14:02 [Bot] Domains deleted within the past day: 0
07.09. 19:14:02 [Gateway] Ready

Code Samples

Check message content

bool isPhishing = await Yachts.IsPhishing("hello https://hypesquadacademy-apply.ml");
//๐Ÿ‘‰ True

Check a domain

bool isPhishing = await Yachts.IsPhishingDomain("warning-selectioneventhype.gq");
//๐Ÿ‘‰ True

Get the latest domains

string[] domains = (await Yachts.GetRecent(TimeSpan.FromDays(1))).Where(x => x.Type == ChangeType.Add).SelectMany(x => x.Domains).ToArray();
//๐Ÿ‘‰ steamcommunitysiv.top, wvwww-roblox.com, discord-download.win, steamcoumunity.eu, streamcummonity.com, streamcommunity.org, join-event-hypesquad.com, steamcommunityzowe.top

Get the database size

int size = await Yachts.GetDatabaseSize();
//๐Ÿ‘‰ 15601

Available methods

  • Task<Change[]> GetRecent(TimeSpan time)
  • Task<Change[]> GetRecent(int seconds)
  • Task IsPhishing(string content)
  • Task IsPhishingDomain(string domain)
  • Task GetDatabaseSize()
  • Task<string[]> GetPhishingDomains()

Available events (requires StorageMode.LocalWS)

  • EventHandler<string> DomainAdded
  • EventHandler<string> DomainDeleted

Statistics from the past week

Date New domains found
10.11.2022 + 37
11.11.2022 + 14
12.11.2022 + 25
13.11.2022 + 23
14.11.2022 + 21
15.11.2022 + 30
16.11.2022 + 14

Recently flagged domains

stcommunity.click
steamppowered.store
steamcommunltu.online
steamncommnuity.com
staemconnunity.ru
steamcomrunity.ru
dlscordjbost.com
steamcommynltiy.net.ru
steamcommynltiy.pp.ru
steancommunutty.ru
hypesquad-gg.com

Missing domains

Found a Discord/Steam phishing domain that isn't yet present in the database? Send it into the #domain-reports channel on our Discord server or open an issue in this repository.

Resources

The official Sinking Yachts Discord server has disabled invites at the moment. This will be updated once the server is open to the public again.

sinkingyachts's People

Contributors

actually-akac avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

croat79

sinkingyachts's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.