کانال بایت امن – Telegram
کانال بایت امن
4.83K subscribers
456 photos
52 videos
37 files
644 links
برگزاری دوره های آموزش برنامه نویسی و امنیت نرم افزار.

https://dword.ir
@YMahmoudnia
Download Telegram
#Tools

Windows inside a Docker container

Docker Compose:
services:
windows:
image: dockurr/windows
container_name: windows
environment:
VERSION: "win11"
devices:
- /dev/kvm
cap_add:
- NET_ADMIN
ports:
- 8006:8006
- 3389:3389/tcp
- 3389:3389/udp
stop_grace_period: 2m


🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥163👍3
#Article #ReverseEngineering

Minesweeper Reverse #1

در این مقاله نویسنده با استفاده از فرآیند مهندسی معکوس و برنامه Cheat Engine مرحله به مرحله مهندسی معکوس رو انجام میده. در سری اول مقاله هدف بررسی چیت در زمان برنامه است و بعد موقعیت بمب ها در خانه ها.

لینک دانلود بازی Minesweeper

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
16👍2🔥2
EP01 Nick Harbour - Early Days of Incident Response, Mandiant History…
Josh Stroschein
#Podcast

🔊Behind the Binary By Google Cloud Security - EP01

⚜️پادکست: پشت پرده باینری (Behind the Binary) - توسط Google Cloud Security

🖥در اولین قسمت از پادکست "پشت پرده باینری"، جاش استروشاین (Josh Stroschein) میزبان گفتگویی با نیک هاربر (Nick Harbour) است. در این اپیزود، نیک به مسیر کاری خود از نیروی هوایی ایالات متحده تا عضویت در تیم امنیتی Mandiant می‌پردازد و تجربه‌های ارزشمند خود را در زمینه مهندسی معکوس باینری و تحلیل بدافزارها به اشتراک می‌گذارد.

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥182👍1
کانال بایت امن
#Article #Exploiting 64 Assembly & Shellcoding Series 1. x64 Essentials: Registers 2. NULL bytes 3. Removing Null bytes 4. Basic encoding این مجموعه به صورت گام‌به‌گام شما را در یادگیری توسعه شل‌کد با زبان برنامه‌نویسی اسمبلی x64 همراهی می‌کند و منابع…
#Article #Exploiting

پارت پنجم این مجموعه مقالات قرار گرفت.

5. x64 Assembly & Shellcoding 101 - Part 5

This Part Include :
Locate Kernel32 and collect PE Export Table info

Dynamically Locate GetProcAddress

Use the handle to GetProcAddress to locate the address for LoadLibraryA

Use the handle to GetProcAddress to locate ExitProcess

Use the handle to LoadLibraryA to load user32.dll

Use the handle to user32.dll to locate the address of MessageBoxA within user32.dll using GetProcAddress

Pop the messagebox (not a literal assembly pop operation )

call ExitProcess to exit gracefully!



🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
17🔥2🤩1
#Article #Exploiting

Introduction to x64 Linux Binary Exploitation Series

1. Basic Buffer Overflow
2. Return into libc
3. RoP Chains
4. Stack Canaries
5. ASLR

در این مجموعه مقالات به برخی تکنیک‌های پایه ایی جهت اکسپلویت کردن باینری‌های x64 لینوکس پرداخته میشود. ابتدا با غیرفعال کردن تمامی مکانیزم‌های حفاظتی مانند ASLR، DEP/NX، Canary Stack و غیره شروع میشود.

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥172👍1
#References #ReverseEngineering

Reversing Bits Cheatsheets

مجموعه‌ای جامع از برگه‌های تقلب (Cheatsheets) برای مهندسی معکوس، تحلیل باینری و ابزارهای برنامه‌نویسی اسمبلی. این مخزن به‌عنوان مرجع یکپارچه‌ای برای پژوهشگران امنیت، مهندسی معکوس و برنامه‌نویسان سطح پایین به شمار می آید.

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
15👍3🔥1
#Article #Unpacking

Breaking Control Flow Flattening: A Deep Technical Analysis

تکنیک تسطیح جریان کنترل (Control Flow Flattening - CFF) نوعی مبهم‌سازی کد است که به جای پیچیده کردن عملیات‌ها، کل جریان اجرای برنامه (یا حداقل جریان یک تابع) را مخفی می‌کند.

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

در این پست نویسنده با ابزاری که برای Ninja Binary مینویسد CFF را شناسایی و آن را از بین میبرد.

این پست برای علاقه مندان به مباحث آنپکینگ و تحلیل بدافزار مفید است.

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥191👍1
#Article #Exploiting #Shellcode

From C to shellcode (simple way)

شل‌کد (Shellcode) در زمینه توسعه بدافزار، به قطعه کدی مستقل از کد ماشین گفته می‌شود که می‌توان آن را به هر نقطه‌ای تزریق کرد و اجرا نمود، بدون اینکه نیازی به نگرانی درباره وابستگی‌ها، DLLها، چیدمان پشته یا سایر متغیرها باشد.

آیا واقعاً می‌توان کدی در زبان C نوشت که به عنوان شل‌کد مستقل استفاده شود؟
این دقیقا موضوع مقاله هست که سعی دارد به روشی ساده پیاده سازی را انجام بده.

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥161👍1🤩1
#Article #MalwareAnalysis

Understanding RedLine Stealer: The Trojan Targeting Your Data

در این پست به‌صورت مرحله‌به‌مرحله به آنالیز تروجان RedLine Stealer پرداخته شده است.

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

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
17👍2🔥2
Forwarded from OS Internals (Abolfazl Kazemi)
سرقت توکن پروسه‌ها در ویندوز به کمک WinDbg

توکن یا به صورت کامل‌تر Access Token در ویندوز، یک شی است که شرایط امنیتی که یک پروسه یا نخ تحت آن می‌توانند کار کنند را مشخص می‌کند. توکن با احراز هویت موفق یک کاربر ایجاد شده و هر پروسه‌ای که توسط کاربر ایجاد شود، یک نسخه از آنرا خواهد داشت.

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

برخی از اطلاعاتی که توسط توکن مشخص می‌شوند عبارتند از: شناسه یا SID‌ کاربر. شناسه‌ی گروه‌هایی که کاربر عضوی از آن‌هاست. شناسه‌ی نشست جاری. لیستی از مجوزهایی که کاربر یا گروه‌های آن دارند.

یکی از کارهایی که با توکن‌ها قابل انجام بوده و در سرویس‌ها کاربرد زیادی دارد impersonation است. در این مدل، یک نخ با توکن متفاوتی از توکن اصلی خود اجرا شده و در نتیجه مجوزهای متفاوتی خواهد داشت. به عنوان مثال فرض کنید یک File Server دارید که فایل‌های آن محدودیت‌های دسترسی متفاوتی دارند. در این مثال، سرور با انجام impersonation درخواست هر کلاینت را با توکن همان کلاینت پاسخ داده و در نتیجه هر کاربر تنها به فایل‌های خود دسترسی خواهد داشت.

یکی از کارهایی که بدافزارها از آن بهره می‌برند همین بحث impersonation و دسترسی به منابع مختلف، مثل dump اطلاعات کاربران، است. در این حالت بدافزار توکن یک پروسه با دسترسی بالا را دزدیده و از آن برای مقاصد خود استفاده می‌کند.

در این ویدئو به کمک WinDbg مفهوم توکن و شیوه‌ی دزدیدن و قرار دادن آن بر روی پروسه‌ی دلخواهی شرح داده می‌شود که هم با موضوع توکن آشنا شده و هم به صورت عملی ببینیم که بدافزارها چطور می‌توانند از impersonation سواستفاده کنند.


لینک ویدئو در یوتیوب:
https://youtu.be/NTPVeauBDe4
لینک ویدئو در آپارات:
https://www.aparat.com/v/cvyprh5

#ShortWinInternals #windows #internals #token #WinDbg #impersonation #kernel
13👍1🔥1
#Article #LOTL #ReverseEngineering

Living Off the Land: Reverse Engineering Methodology + Tips & Tricks (Cmdl32 Case Study)

در این مقاله، نویسنده با استفاده از تکنیک LOTL به بررسی یک باینری خاص به نام Cmdl32.exe پرداخته است که به‌عنوان یکی از دشوارترین اهداف برای مهندسی معکوس شناخته شده (در واقع، به گفته نویسنده، سخت‌ترین موردی که تا به حال تحلیل کرده است).

کلمه LOTL مخفف Living Off The Land است و به تکنیکی اشاره دارد که در آن مهاجم به جای استفاده از ابزارها و بدافزارهای خارجی، از برنامه‌ها و قابلیت‌های از پیش نصب شده در سیستم قربانی برای انجام حملات خود استفاده می‌کند.

این تکنیک به دلیل استفاده از ابزارها و باینری‌های قابل اعتماد سیستم، تشخیص و شناسایی حمله را برای راهکارهای امنیتی مانند آنتی‌ویروس‌ها و EDRها دشوارتر می‌کند.

اگر به این نوع حملات علاقه دارید، چندین پروژه مرتبط وجود دارد که می‌توانید از طریق لینک‌های زیر آن‌ها را بررسی کنید:


➡️ GTFOBins
➡️ LOLBAS
➡️ LOLAPPS
➡️ LOLDRIVERS
➡️ LOLAD
➡️ LOLESXi
➡️ LOOBins

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
16🔥4👍2
#Course #ReverseEngineering

Reverse engineering focusing on x64 Windows.

دوره رایگان مهندسی معکوس با تمرکز بر باینری‌های ۶۴ بیتی ویندوز به همراه ابزارها و فایل‌های پروژه

1. Introduction
2. BinaryBasics
3. Assembly
4. Tools
5. BasicReversing
6. DLL
7. Windows
8. Generic Table

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥232👍1
#Tools

انتشار رسمی سیستم عامل ویندوز 11 مختص به ARM64

فایل‌های ISO شامل نسخه 24H2 ویندوز 11 هستند و می‌توان آن‌ها را از وب‌سایت رسمی مایکروسافت دانلود کرد.

حجم این فایل‌ها بسته به زبان انتخابی شما حدود 5 گیگابایت است. به گفته مایکروسافت، این فایل‌های ISO در درجه اول برای اجرای ویندوز 11 در ماشین مجازی بر روی کامپیوترهای Arm64 طراحی شده‌اند. با این حال، همچنین اشاره شده است که می‌توانید از آن‌ها برای نصب (Clean Install) ویندوز 11 به‌طور مستقیم روی سخت‌افزار Arm64 نیز استفاده کنید.

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥19🤩32👍1😁1
#Article #GameHacking

A Roadmap to Security Game Testing: Finding Exploits in Video Games Introduction

در این مقاله نویسنده شما را قدم به قدم با فرآیندی که برای ساخت ابزارهای پیدا کردن آسیب‌پذیری در بازی‌های ویدیویی استفاده می‌کند، آشنا خواهد کرد.

تمرکز این مقاله بر روی بازی Sword of Convallaria است که هم برای PC و هم برای Mobile قابل دریافت هست و با انجین Unity کد نویسی شده.

هدف نویسنده آشنایی با روش‌های شناسایی آسیب‌پذیری در چارچوب برنامه‌های باگ بانتی است.

🔗سورس کد های مقاله از این ریپو قابل دریافت است.

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
22👍1🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
#Programming

https://benjdd.com/loops/

مقایسه 1 میلیارد حلقه تکرار تو در تو در زبان های برنامه نویسی JS | Python | Go | C و بررسی نتیجه

کد مربوط به Rust رو هم قرار دادم تا خودتون چک کنید.

let array = new Array(10000);
for (let i = 0; i < 10000; i++) {
for (let j = 0; j < 100000; j++) {
array[i] = array[i] + j;
}
}


array = [0] * 10000
for i in range(10000):
for j in range(100000):
array[i] = array[i] + j


package main
func main() {
var array [10000]int
for i := 0; i < 10000; i++ {
for j := 0; j < 100000; j++ {
array[i] = array[i] + j
}
}
}


int main() {
long array[10000];
for (int i = 0; i < 10000; i++) {
for (int j = 0; j < 100000; j++) {
array[i] = array[i] + j + i;
}
}
}


fn main() {
let mut array = [0i64; 10000];
for i in 0..10000 {
for j in 0..100000 {
array[i] += j + i as i64;
}
}
}


🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22🔥32
#Article #Debugger

Writing a Linux Debugger

چند روز پیش در گروه بایت‌امن، کتابی با عنوان نوشتن یک دیباگر لینوکس به زبان ++C معرفی کردیم. فصل سوم این کتاب را می‌توانید از لینک زیر دانلود کنید.

همچنین تا زمان انتشار نهایی کتاب Building a Debugger، نویسنده خانم Sy Brand در بلاگ خود مجموعه مقالاتی درباره ساخت دیباگر لینوکسی منتشر کرده است که می‌توانید از آن‌ها استفاده کنید.

کدهای مرتبط در GitHub قرار داده شده‌اند، با این تفاوت که کتاب درباره نوشتن دیباگر ۶۴ بیتی است، در حالی که مقالات بلاگ مربوط به دیباگر ۳۲ بیتی هستند.

1. Setup
2. Breakpoints
3. Registers and memory
4. Elves and dwarves
5. Source and signals
6. Source-level stepping
7. Source-level breakpoints
8. Stack unwinding
9. Handling variables
10. Advanced topics

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
22👍1🎉1
#Article #ProcessInjection

The Definitive Guide to Linux Process Injection

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

در این مقاله ابتدا تفاوت‌های میان تزریق کد در سیستم‌عامل ویندوز و لینوکس بررسی می‌شود و سپس تکنیک‌های رایج در سیستم‌عامل لینوکس مورد بحث قرار می‌گیرند.

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
21👍3🎉1
#Article #Unpacking

Dotnet String Decryptor

در دومین سری از مقالات آنپکینگ، این‌بار به سراغ تکنیک String Decryptor در برنامه‌ها و بدافزارهای .NET رفته‌ایم.

در این مقاله، سمپل DCRat یا همان DarkCrystal RAT تحلیل می‌شود و با استفاده از کتابخانه dnlib، یک اسکریپت پایتون برای دیکریپت کردن رشته‌ها نوشته خواهد شد.

Step 1 : Importing libs and loading the .NET filePermalink
Step 2 : Finding suspected decryption methods
Step 3 : Finding references to suspected methods
Step 4 : Patching
Step 5 : Saving
Step 6 : Testing and final notes

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
20👍4🔥3