layerx-labs/dappkit

test 1

Closed this issue · 0 comments

Some notification EOAs are tagging scammers on chain about scam contracts they deploy. This bot should monitor these notification EOAs and emit an alert on the scam contract/ EOA associated with the to address the scam notifier sends messages to. An example EOA is the 0xcd5496ef9d7fb6657c9f1a4a1753f645994fbfa9 (scamwarning.eth). An example message is: https://etherscan.io/tx/0xe5b57fd6c5b8376ce2fb1ace5688dd719db977c8e658dd582dedc5ede19687bd.

However, the above address is just an example and more notification EOAs may exist on mainnet as well as different chains. The bot should automatically update the list of notification EOAs by performing an analysis based on other notifications. E.g. if scamwarning.eth notifies contracts 1-10 and another EOA notifies a subset of the same contracts, it is likely another notification EOA. The bot should automatically perform this analysis and grow the notification EOAs it monitors.

The bot should emit three types of alerts as per the following condition:

A suspicious alert in case one of the notification EOAs sends a message to an EOA with a scam warning

The bot should emit the following alert:

  • SCAM-NOTIFIER-EOA

    • Description: “{scammer_eoa} was flagged as a scam by {notifier_eoa} {notifier_name}”

    • Severity is always set to "high"

    • Type is always set to "suspicious"

    • Metadata

      • scammer_eoa - the address of the scammer EOA

      • scammer_contracts - a comma separated list of all the contracts the EOA created

      • notifier_eoa - the address of the notifier

      • notifier_name - a human readable name/ ENS name of the notifier

The bot should set the label for the EOA as well as any contract the EOA creates:

'entityType': EntityType.Address,

             'label': "scam",

             'confidence': 0.7

A suspicious alert in case one of the notification EOAs sends a message to an contract with a scam warning

The bot should emit the following alert:

  • SCAM-NOTIFIER-CONTRACT

    • Description: “{scammer_contract} was flagged as a scam by {notifier_eoa} {notifier_name}”

    • Severity is always set to "high"

    • Type is always set to "suspicious"

    • Metadata

      • scammer_contract - the scammer contract

      • scammer_eoa - the address of the deployer EOA

      • notifier_eoa - the address of the notifier

      • notifier_name - a human readable name/ ENS name of the notifier

The bot should set the label for the EOA as well as any contract the EOA creates:

'entityType': EntityType.Address,

             'label': "scam",

             'confidence': 0.7

A info alert in case the bot identifies a new notification EOAs it will now monitor

The bot should emit the following alert:

  • NEW-SCAM-NOTIFIER

    • Description: “New scam notifier identified {notifier_eoa} {notifier_name}”

    • Severity is always set to "info"

    • Type is always set to "info"

    • Metadata

      • ‘similar_notifier_eoa’ - the address of the notifier that it is similar to (as in flags similar contracts/EOAs)

      • ‘similar_notifier_name’ - a human readable name/ ENS name of the notifier that it is similar to (as in flags similar contracts/EOAs)

    • ‘union_flagged’ - comma separated list of addresses both have flagged

    • notifier_eoa - the address of the notifier

    • notifier_name - a human readable name/ ENS name of the notifier