کانال بایت امن
4.52K subscribers
415 photos
49 videos
34 files
586 links
برگزاری دوره های آموزش برنامه نویسی و امنیت نرم افزار.

https://dword.ir
@YMahmoudnia
Download Telegram
#TrainingCourse #Programming #CPP

📗C++ API Programming References

رفرنس اول : theForger's Win32 API Programming Tutorial

در زبان ++C درس داده شده و دارای چندین نسخه ترجمه شده از جمله زبان انگلیسی .

🌐 Website

رفرنس دوم : وب سایت ZetCode

در زبان ++C که نسخه تجاری به صورت PDF از همین سرفصل ها قابل ارائه توسط وب سایت است که اگر نسخه رایگان برای شما جالب و کاربردی بود امکان خرید eBook را هم خواهید داشت.

🌐 Website

Telegram Channel : @securebyte

Our Public Group : https://t.me/joinchat/8IAKs9HaoGU2NmE0
_
👍1
#Tools #Programming #Hooking

معرفی کتابخانه های زبان برنامه نویسی ++C در زمینه Hook

MinHook
🌐 Link

EasyHook
🌐 Link

PolyHook
🌐 Link

Telegram Channel : @securebyte

Our Public Group : https://t.me/joinchat/8IAKs9HaoGU2NmE0
_
#Tools #Programming #BoxedAPP

ابزار BoxedAPP SDK به برنامه نویسان این امکان را میدهد که شبیه سازی فایل سیستم ها و همینطور رجیستری ویندوز را در برنامه های خود انجام دهند. با استفاده از تابع هایی که این SDK در اختیار شما قرار میدهد امکانات زیر را خواهید داشت.

ساخت فایل مجازی
ساخت کلید ها و مقادیر مجازی
اجرای مستقیم پروسس ها در حافظه
استفاده از ActiveX ها بدون رجیستر کردن
جاسازی Runtime ها مثل Net , Flash , VC++ redistributable.

سایر موارد استفاده از این SDK در سایت تولید کننده قرار داده شده است. اما در هنگام استفاده از این SDK موارد امنیتی در مورد تزریق DLL ها را در نظر بگیرید به علت اینکه در این SDK از ساختار Virtual File ها استفاده میشود این امکان وجود دارد تا با تزریق یک DLL اطلاعات را از حافظه کامپیوتر بیرون کشید.

🌐 Website

Telegram Channel : @securebyte

Our Public Group : https://t.me/joinchat/8IAKs9HaoGU2NmE0
_
#eBook #Programming

📗Free Programming Notes for Professionals
By : Goalkicker

🌐 Download Link

Telegram
Channel : @securebyte

Our Public Group : https://t.me/joinchat/8IAKs9HaoGU2NmE0
_
#Github #Programming

Planet Source Code Github Repo

🌐 Project Link

Telegram
Channel : @securebyte

Our Public Group : https://t.me/joinchat/8IAKs9HaoGU2NmE0
_
#Github #Programming #Sploit

Sploit - Go package that aids in binary analysis and exploitation

🌐 Project Link

Telegram
Channel : @securebyte

Our Public Group : https://t.me/joinchat/8IAKs9HaoGU2NmE0
_
#Article #Security #Fuzzing #Programming

📗 Fuzzing PHP with Domato

Lately I've been working on fuzzing the PHP interpreter. I've explored many tools and techniques (AFL, LibFuzzer, even a custom fuzz engine), but most recently I decided to give Domato a try. For those not aware, Domato is a grammar-based DOM fuzzer, built to tease complex bugs out of complex code-bases.

🌐 Article Link

Telegram
Channel : @securebyte

Our Public Group : https://t.me/joinchat/8IAKs9HaoGU2NmE0
_
#Article #Security #Programming

📗 Fuzzing Go package using go-fuzz & libfuzzer

In this course, I will first select a popular Golang library and identify the most interesting methods to fuzz. Then, I’ll explains how to use go-fuzz and libfuzzer to compile the fuzzing target. Finally, I’ll show how to run the fuzzer.

🌐 Article Link

@securebyte
#Article #Fuzzing #Programming

📗 Fuzzing Python code using pythonfuzz

In this course, I will first select a popular Python package and find some code source example using interesting methods to fuzz. Then, I’ll explains how to create a pythonfuzz fuzzing target and how to customize it. Finally, I’ll show how to run the fuzzer and explain some particularity of pythonfuzz.

🌐 Article Link

Telegram
Channel : @securebyte

Our Public Group : https://t.me/joinchat/8IAKs9HaoGU2NmE0
_
#Github #Programming #Sojobo

Sojobo - A binary analysis framework

Sojobo is an emulator for the B2R2 framework. It was created to easier the analysis of potentially malicious files. It is totally developed in .NET so you don't need to install or compile any other external libraries (the project is self contained).

🌐 Project Link

Telegram
Channel : @securebyte

Our Public Group : https://t.me/joinchat/8IAKs9HaoGU2NmE0
_
#Github #Programming #UASM

Support for UASM x86 and x64 assembler in RadASM 2.2.2.x

🌐 Project Link

Telegram
Channel : @securebyte

Our Public Group : https://t.me/joinchat/8IAKs9HaoGU2NmE0
_
👍11
#Github #Programming #ReverseEngineering

Porting Windows Dynamic Link Libraries to Linux allows native Linux programs to load and call functions from a Windows DLL

پروژه ای جهت لود و فراخوانی DLL های ویندوزی در برنامه های لینوکس با استفاده از PE/COFF loader کاستوم شده به همراه مثال هایی از جمله انتقال کتابخانه های Windows Defender به لینوکس

🌐 Project Link

Telegram
Channel : @securebyte

Our Public Group : https://t.me/joinchat/8IAKs9HaoGU2NmE0
_
👍5
#eBook #Android #Security #Programming

Android Application Secure Design/Secure Coding Guidebook By Japan Smartphone Security Association (JSSEC)- English Version

این کتاب شامل مجموعه ای از نکات و ترفند ها به منظور طراحی و کد نویسی ایمن برنامه های اندروید توسط JSSEC به رایگان منتشر شده است

🌐 Website - PDF

Telegram
Channel : @securebyte

Our Public Group : https://t.me/joinchat/8IAKs9HaoGU2NmE0
_
👍7
#Article #Programming

▪️Writing a Debugger From Scratch by Tim Misiak

در مجموعه جدید آموزشی آقای Tim Misiak به نام "نوشتن دیباگر از ابتدا" هدف اینه که تا جای ممکن با نحوه کار دیباگر ها آشنا بشید.

در ضمن نویسنده با زبان برنامه نویسی Rust این دیباگر رو جلو میبره.

DbgRs Part 1 - Attaching to a Process
DbgRs Part 2 - Register State and Stepping
DbgRs Part 3 - Reading Memory
DbgRs Part 4 - Exports and Private Symbols
DbgRs Part 5 - Breakpoints

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

C++ Hooking - Write Less Do More

Cpp Hooking - Set up function hooking easily and writing less code. It supports both Inline hooking & IAT hooking on both 32-bit & 64-bit.

با استفاده از این کتابخانه در ++C قادر خواهید بود عملیات هوک کردن به صورت Inline و IAT رو در 32-64 بیت انجام بدین .

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

Portable VS Build Tools installer


Downloads standalone 64-bit MSVC compiler, linker & other tools, also headers/libraries from Windows SDK, into a portable folder, without installing Visual Studio.

با استفاده از این ابزار و بدون نیاز به نصب ویژوال استادیو می توانید کامپایلر MSVC را دانلود و استفاده کنید. این ابزار با استفاده از نسخه MSVC و نسخه Windows SDK مورد نظر شما، اینکار را انجام می دهد.

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
18👍2🔥2🎉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 #Programming

⚜️Everything About Memory Allocators: Write A Simple Memory Allocator

اختصاص حافظه یکی از مفاهیم اساسی در برنامه‌نویسی سیستم است که هر توسعه‌ دهنده‌ای باید با آن آشنا باشد. این مقاله به بررسی دقیق پیاده‌سازی یک تخصیص‌ دهنده حافظه ساده در زبان C و در سیستم عامل لینوکس می‌پردازد و توابعی مانند malloc()، free()، calloc() و realloc() را توضیح می‌دهد.

اگر چه این پیاده‌سازی به پیچیدگی تخصیص‌ دهنده‌های حرفه‌ای مانند ptmalloc یا jemalloc نخواهد بود، اما مفاهیم اصلی را به شما آموزش خواهد داد.

🦅 کانال بایت امن | گروه بایت امن
_
Please open Telegram to view this post
VIEW IN TELEGRAM
22👍3🎉1
Forwarded from OS Internals (Abolfazl Kazemi)
مروری بر پروسه‌های کرنلی لینوکس

در لینوکس برخی از پروسه‌ها بخش user space‌ نداشته و کامل در دل کرنل اجرا می‌شوند. این پروسه‌ها در اجرای کارهای مختلف به سیستم‌عامل کمک کرده و به صورت background کارهایی که نیاز است انجام شوند که لینوکس بتواند سرویس‌دهی موارد مختلف را انجام دهد مدیریت می‌کنند. در این پست و ویدئو برخی از این پروسه‌ها معرفی شده و کاربردهای مختلف آن‌ها شرح داده می‌شود.

اولین پروسه (نخ) کرنلی لینوکس kthreadd است که وظیفه‌ی ایجاد یک interface برای ایجاد و مدیریت پروسه‌های کرنلی در لینوکس را داشته و همیشه با PID‌ برابر ۲ اجرا می‌شود. در کد این نخ یک حلقه‌ی بی‌نهایت وجود دارد که از لیستی به اسم kthread_create_list اطلاعات پروسه‌ی کرنلی که قرار است ایجاد شود را برداشته و آنرا ایجاد می‌کند. تمامی پروسه‌های کرنلی لینوکس از اینجا به بعد فرزندان kthreadd خواهند بود.

پروسه‌ی بعدی که معرفی می‌کنیم migration است. از پروسه‌ی کرنلی migration به تعداد coreهای cpu خواهیم داشت و وظیفه‌ی آن مدیریت پروسه‌هایی است که بر روی یک core اجرا می‌شوند و در صورت زیاد بودن بار بر روی یک core یک پروسه را از روی run_queue یک core بر داشته و بر روی run_queue یک core دیگر قرار می‌دهد.

پروسه‌ی دیگری که در ویدئو در مورد آن صحبت شده است kcompactd است که وظیفه‌ی آن جلوگیری از ایجاد fragmentation‌ در حافظه و کمک به کنارهم قرار گرفتن pageهای مرتبط در حافظه است.

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

در ویدئو در مورد پروسه‌های بیشتری صحبت شده است که می‌توانید با مشاهده‌ی آن از این پروسه‌ها اطلاع پیدا کنید.

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

پ.ن ۱:‌ برای اطلاع از جزئیات پروسه‌های ابتدایی لینوکس پست زیر را مشاهده کنید:
https://t.me/OxAA55/133

پ.ن ۲: برای اطلاع از جزئیات پروسه و نخ در لینوکس پست زیر را مشاهده کنید:
https://t.me/OxAA55/124

#ShortLinuxInternals #linux #internals #programming #kernel #memory #threads #processes #kernel_threads
🔥162