• Stars
    star
    262
  • Rank 156,136 (Top 4 %)
  • Language
  • Created over 3 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A checklist of practices for organizations dealing with account takeover (ATO)

Account Takeover (ATO) Checklist

This is a list of considerations when designing a sophisticated program to deal with account takeover threats.

View the associated threat model here.


🐑🐑🐺🐑


Infrastructure 🛠

Backend systems we rely on for detection and mitigation.

  • General Rate Limiting
  • User Event / Authentication Logs
  • Device Identification (Cookie)
  • Browser Fingerprinting (No Cookie)
  • Device Verification (Email confirmation, SMS, Snail Mail)
  • Customer Session, Password Reset Workflows (Backend)
  • Link Shim
  • Leaked Credential Pipeline (Backend)
    • Scraping (Pastebin, torrents, etc)
    • D a R k W e B and UnDErGroUnD
    • Periodically accessible dumps

ATO Indicators and Features 🕵️‍♀️

This section describes useful data that often needs to be acquired externally. These can be used in automated classification or to decorate investigation workflows with correlating info.

  • Known proxies, tor, vps & colocation
  • Observed malicious or compromised (Paid)
  • Known Leaked Credentials
  • Recent Sim Swap
  • Domain intelligence
    • New domains
    • Disposable
    • Previously abused
  • Address verification
  • Cellular verification (VoIP detection)

Product / UX 🎮

All user facing experiences to help reduce risk within a product.

  • MFA Options
    • Security keys, MFA, SMS, backup codes, etc.
  • Knowledge Base and self-support
    • Reducing outreach to support for questions.
  • Link Shim
    • Allows for disabling of external links when copy-pasted, emailed, or otherwise brought off platform.
    • Allows for warning messages before leaving platform.
  • Victim and Witness escalation (Report Abuse)
    • Where victims of ATO report their issue.
    • Where witnesses of abuse report off-platform impact of on-platform ATO.
  • Forced Password Reset Workflows
    • Retroactively ask users to change leaked passwords
      • Existing customers will have weak passwords.
    • Handle newly found customers from a leaked credential backend
      • Newly leaked credentials will cause a regular need to change customer passwords.
    • "Reset the password to your email"
      • Some investigations will indicate a customer's email is compromised, not their password.
    • Account re-enable
      • Self service workflows to get back online after you have intervened.
  • Enforce password strength to prevent future weak passwords
    • New Registration
    • Password Change
    • Ongoing leaked / Newly weak
  • Developer console prompts w/ a warning message
  • Verification / Challenge workflows
    • When you are uncertain of the customer's location or device.
      • SMS
      • Email
      • Account / Identity Knowledge
      • ID Submission
      • CAPTCHA

Customer Service ☎️

Operational customer service interactions (Support tickets). Support organizations often escalate abuse at scale to engineering and have the most visibility into what is, or is not, working.

  • Standard Org Language
    • What counts as ATO?
  • Metrics / KPI
    • Tracking abuse going up or down.
  • IR Escalation
    • Playbooks / Plans for creating an outage or getting engineering resources involved.
  • Reset Workflows (Administrative Frontends)
    • Empowering scalable operations to mitigate abuse scenarios.

Investigations & Response 🚑

There will be periodic deep dives into ATO attacks to ask "what happened?". This section pertains to that perspective of work.

  • Authentications are searchable by device, ip, user agent
    • Searches can pivot: Device to IP, IP to device, etc.
    • Bonus: Actions / Events are searchable
    • Bonus: All routes / Endpoints are searchable
  • Tooling exists to reset bulk accounts that meet criteria
  • Tooling exists to reverse transactions / changes that meet criteria.

Automation 🤖

Tying everything together for operational ATO systems. Engineering time is the least scalable, customer support hours are more scalable, fully automated systems are the most scalable.

  • Customer service classifies abuse cases
  • AI systems classifies authentication events
  • Suspicious cases push customers to verify activity
  • XFN meetings between groups to improve anti-abuse systematically

Anti-Phishing 🎣

Raising the bar against trivial credential stealing attacks which cause the most problems for unprepared organizations.

  • SPF / DMARC / DKIM
  • Brand protection (Internet scanning for your brand being spoofed)
  • spoofed@ and customer phish reporting
  • App store hunting
  • Domain / ISP Takedowns
  • Browser blacklisting
  • Referer, hotlinks, adversary leaks

More Repositories

1

redteam-plan

Issues to consider when planning a red team exercise.
611
star
2

AuthTables

AuthTables is a microservice that helps detect "Account Take Over" caused by simple credential theft. If bad actors are stealing your users passwords, AuthTables may be useful.
Go
224
star
3

Blockchain-Graveyard

All publicly known blockchain incidents
201
star
4

Incident-Response-Plan

Boilerplate Incident Response Plan from "Starting Up Security"
161
star
5

minimalist-risk-management

A minimalist risk management program!
119
star
6

Vault-for-Incident-Responders

Things to know when DFIR occurs near a vault deployment.
43
star
7

risk-measurement

read the docs version of risk management
HTML
24
star
8

osquery-hids

Launchd daemon that reports major OSX modifications through growl
XML
16
star
9

forecast-documentation

Notes and reference for ongoing forecasting.
16
star
10

www-forecast

HTML
11
star
11

slack-tlp

Slack emojis for the Traffic Light Protocol (TLP)
8
star
12

simple-risk-analysis

A forecast driven risk assessment derived from other high risk industries.
HTML
7
star
13

acceptable_use_policy

5
star
14

Ethereum-Address-Anatomy

Building an external account from scratch (OpenSSL)
Ruby
5
star
15

Risk-Forecasting

A probabilistic approach to security risk management.
HTML
4
star
16

elicited

Helper functions to make expert elicitation easier
Python
4
star
17

nist-markdown

Markdown versions of NIST 800 Special Publications
4
star
18

batch-dmarc

take domains from STDIN, dump out dmarc policy.
Ruby
3
star
19

making-decisions

Short and drafty writing about decisions
HTML
3
star
20

Simple-Chain

A very simple blockchain.
Ruby
2
star
21

osquery-hids-config

2
star
22

simple-risk

deprecated, moved to https://magoo.github.io/risk-measurement
HTML
1
star
23

key_anatomy

Ruby
1
star
24

legal-risk

A monte carlo simulation for legal risk
Python
1
star
25

learn-netlify

1
star
26

nist-csf-markdown

1
star