ShreKy Profile picture
Oct 24 โ€ข 12 tweets โ€ข 7 min read
Introduction to #XSS

Learn the basics of ๐‚๐ซ๐จ๐ฌ๐ฌ-๐’๐ข๐ญ๐ž ๐’๐œ๐ซ๐ข๐ฉ๐ญ๐ข๐ง๐  (๐—๐’๐’)

Thread๐Ÿงต๐Ÿ‘‡

#bugbounty #bugbountytips #bugbountytip #cybersecurity #cybersecuritytips #infosec #infosecurity #hacking
Let's inspect the name first:

The ๐’๐œ๐ซ๐ข๐ฉ๐ญ๐ข๐ง๐  part indicates, obviously, scripting, so we can think about what kind of scripting we know exist in Web Apps: HTML & JavaScript being the 2 most common.

Secondly, XSS is part of the INJECTION bug class (see @owasp's Top 10)
So, we now know XSS consists of injecting scripts in websites.

Types of XSS:

1. Reflected
2. Stored
3. DOM-based
They can also be Blind too (you don't see the reflection)

As this thread is aimed at beginners, I will focus on the first 2 as they're easier to understand at first
Let's find out more:

XSS solely depends on reflection of user input(or other inputs) meaning you input something, and it reflects on the page/source code OR somewhere else on the back-end (in which case it's Blind XSS)

User input is carried mostly by parameters in a request ImageImage
Let's differentiate Reflected and Stored XSS:

Reflected - most common XSS type, happens when loading a URL with a vulnerable parameter that reflects on the page based on its value

Stored - happens in data that's stored on the page/server, such as username, comment, posts, etc. ImageImage
Similar to SQL Injection, you achieve XSS by injecting scripts, and them reflecting onto the page and getting executed in the browser.

A basic XSS payload looks like this: <script>alert(1)</script>
This calls the <script> tag, and executes alert(), which will pop up an alert box Image
1๏ธโƒฃ Reflected XSS

As mentioned before, this XSS is delivered via a URL and executes upon loading the page.

The XSS payload is delivered through a vulnerable parameter that we were able to inject valid HTML scripts that reflect successfully.

Learn more โžก๏ธ portswigger.net/web-security/cโ€ฆ
2๏ธโƒฃ Stored XSS

Again, this type of XSS is called stored because the payload gets stored on the page indefinitely (or until we change/delete it), and anytime someone accesses the page, it will execute.

Such as a comment, description, etc.

To learn more โžก๏ธ portswigger.net/web-security/cโ€ฆ
FILTERS/WAFs

The worst enemy for us bug hunters.

There's a ton of techniques to bypass certain filters and WAFs, depending on your target and situation.

One of the best that specialize in XSS is @brutelogic, make sure to check out his cheat sheet โžก๏ธ brutelogic.com.br/blog/xss-cheatโ€ฆ
Now, practice makes perfect.

Head over to portswigger.net/web-security/aโ€ฆ and practice some XSS labs.

After that, go find some XSS on some bug bounty programs, however, beware of dupes, as most people automate this process for the easy ones.

Also check out @theXSSrat , its in his name
@theXSSrat That's a wrap!

If you enjoyed this thread:

1. Follow me @shrekysec for more of these
2. RT the tweet below to share this thread with your audience
This has been corrected by @theXSSrat here --> ,check it out

โ€ข โ€ข โ€ข

Missing some Tweet in this thread? You can try to force a refresh
ใ€€

Keep Current with ShreKy

ShreKy Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @shrekysec

Oct 27
Bug Testing Methodology Series:

๐’๐’๐‘๐… (๐’๐ž๐ซ๐ฏ๐ž๐ซ ๐’๐ข๐๐ž ๐‘๐ž๐ช๐ฎ๐ž๐ฌ๐ญ ๐…๐จ๐ซ๐ ๐ž๐ซ๐ฒ)

Learn how to test for #SSRF step by step on real #bugbounty programs

Thread๐Ÿงต๐Ÿ‘‡

#cybersecurity #cybersecuritytips #infosec #hacking #bugbountytips #infosecurity
Before we start, this thread won't teach how SSRF works, but rather a methodology to follow while actively testing for it.

To learn about how SSRF attacks work, have a read here โžก๏ธ portswigger.net/web-security/sโ€ฆ
1๏ธโƒฃ Finding an attack vector

This step simply implies using the web app THOROUGHLY and finding a place where you input a URL and the server fetches it.

Ex: profile pic from URL, URL Redirects, etc.

The best tip I can give you for this step is: CLICK EVERY SINGLE BUTTON YOU SEE
Read 9 tweets
Oct 18
Bug Testing Methodology Series:

๐๐€๐‚ (๐๐ซ๐จ๐ค๐ž๐ง ๐€๐œ๐œ๐ž๐ฌ๐ฌ ๐‚๐จ๐ง๐ญ๐ซ๐จ๐ฅ)

Learn how to test for Broken Access Control step by step on real #bugbounty programs.

Thread๐Ÿงต๐Ÿ‘‡

#cybersecurity #cybersecuritytips #infosec #hacking #bugbountytips #infosecurity
Before we start, this thread will not teach exactly how Broken Access Control vulnerabilities arise, but rather a testing methodology.

If you want to learn how BAC bugs work, check this out โžก๏ธ portswigger.net/web-security/aโ€ฆ
1๏ธโƒฃ Know your target

In order to know what which user role can do, you have to know your target well.

If documentations are available, make full use of them, if not, use the app as much as you can from the perspective of each user role (have a different account for each role)
Read 9 tweets
Oct 13
#BugBounty Writeup Timeโฐ

Application DOS through unfinished image contents:
๐Ÿงต๐Ÿ‘‡

#bugbountytips #infosec #cybersecurity #cybersecuritytips #hacking #bugbountytip
Context about target:

Small blockchain platform allowing users to launch and contribute to projects.

Projects can contain a banner image, and this is where the bug resides.

This is gonna be a short one.
When uploading an image for the project, it sent a POST request with an "image" WebKitFormBoundary parameter, which contained the image contents.

After some XSS testing, I came across that removing the last line of the image contents resulted in weird behavior.
Read 6 tweets
Oct 5
Bug Testing Methodology Series:

๐—๐’๐’ (๐‚๐ซ๐จ๐ฌ๐ฌ ๐’๐ข๐ญ๐ž ๐’๐œ๐ซ๐ข๐ฉ๐ญ๐ข๐ง๐ )

Learn how to test for #XSS step by step on real #bugbounty programs.

Thread๐Ÿงต๐Ÿ‘‡

#cybersecurity #cybersecuritytips #infosec #hacking #bugbountytips #infosecurity
Before we start, it should be mentioned that this thread will only focus on the testing methodology of XSS, not teaching how it works.

If you don't already know what XSS is, check this out โžก๏ธ portswigger.net/web-security/cโ€ฆ
1๏ธโƒฃ Look for reflections

This is the first step in finding XSS.

Anywhere you see user input is reflected in the response (not limited to what you see on the page, it could be in source code/HTTP response only), note the location/parameter down, that's a potential attack vector.
Read 10 tweets
Oct 4
Complete roadmap to get into #cybersecurity in 2022:

Thread๐Ÿงต๐Ÿ‘‡

#cybersecurity #cybersecuritytips #infosec #hacking #hacker #bugbounty #bugbountytips #infosecurity
1๏ธโƒฃ IT Fundamentals

Before jumping into more advanced fields, you gotta know the basics.

You can learn everything you need for FREE from
@ProfessorMesser's course โžก๏ธ professormesser.com/free-a-plus-trโ€ฆ

For reference, you should be apt for @CompTIA's A+ certification before the next step.
2๏ธโƒฃ Networking

It's time to get technical.

Networking will teach you how the internet works, and it's CRUCIAL to have a SOLID understanding of this subejct.

You don't have to be a network engineer, but know things like the OSI Model, TCP/IP, Ports & Services, CIDR, Subnets, etc
Read 18 tweets
Sep 30
I gained FULL ADMIN access to other organizations.

The craziest #bugbounty I've found.

Writeup๐Ÿงต๐Ÿ‘‡

#bugbountytips #infosec #cybersecurity #cybersecuritytips
First of all, I should give a little context about the target:

The target consisted of a collaboration tool for organizations/teams.

There are multiple user roles --> Member, Admin, Moderator, Leader.

It allows organizations to communicate with each other, create teams, etc.
Now onto the findings:

This impact was a result of a 3 bug chain.

Info disclosure --> IDOR --> IDOR --> Full Admin Access to other organizations

Let's dive deeper into each bug chain:
Read 13 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(