Amin'sTechLab
2.02K subscribers
572 photos
371 videos
1.29K files
1K links
🔬 Embedded Systems | AI | FPGA | PCB Design
🚀 Exploring tech at the edge of innovation
🧠 Founder of AminTechLab
📍Engineering the future – one bit at a time
Download Telegram
Forwarded from Linuxor ?
خبر فوری

یه آسیب پذیری بسیار خطرناک توی لینوکس پیدا شده که اجازه میده کاربر عادی با یه سری تغییرات عادی به کاربر روت ارتقا پیدا کنه. (CVE-2026-31431)

تمام سیستم عامل های لینوکس و همه دیسترو ها از 2017 به بعد و از اون بد تر همه سرور ها و کانتینر های داکر دارای این آسیب پذیری هستن و برای همه واجبه که بروزرسانی انجام بدن. ورژن کرنل های آسیب پذیر از 4.14 به بعد هستش، فورا لینوکس خودتون رو آپدیت کنید.


@Linuxor
Linuxor ?
خبر فوری یه آسیب پذیری بسیار خطرناک توی لینوکس پیدا شده که اجازه میده کاربر عادی با یه سری تغییرات عادی به کاربر روت ارتقا پیدا کنه. (CVE-2026-31431) تمام سیستم عامل های لینوکس و همه دیسترو ها از 2017 به بعد و از اون بد تر همه سرور ها و کانتینر های داکر…
🔴 A vulnerability known as “Copy Fail” (CVE-2026-31431) was discovered in Linux kernels prior to version 7, seriously threatening almost all distributions released since 2017. Unlike most privilege escalation attacks that rely on specific conditions or offsets, this bug is a direct logical flaw within the kernel’s cryptography section and operates with 100% accuracy. The exploit only requires 732 bytes of Python code to inject desired data into the klog (kernel log) and convert a regular user into root without modifying any files on disk. This means even file integrity checkers won’t detect the intrusion because the manipulation only occurs in the RAM. The main risk is that, as the klog is shared between the host and containers, this bug easily allows for escape from the container and takeover of the entire server. If you manage server responsibilities or cloud infrastructure, immediately update the kernel to a version that includes this patch or, as a temporary mitigation, completely disable the algif_aead module in the moprobe configuration.

📎 More information:
https://copy.fail/

⛔️ P.S.: Be sure to update to version 7.

@Amin_TechLab
👍31
The C Programming Language - 2nd Edition
Brian W. Kernighan
Dennis M. Ritchie

@Amin_Techlab
👇👇👇👇👇👇👇👇
4
The C Programming Language - 2nd Edition.pdf
1.4 MB
The C Programming Language - 2nd Edition
Brian W. Kernighan
Dennis M. Ritchie

@Amin_Techlab
3
اگر اوبونتو دارید و می‌خواهید با نت داخلی برای نصب یا به‌روزرسانی پکیج‌ها اقدام کنید، بهتر است مخزن را از archive.ubuntu.com به میرور ir تغییر دهید.

برای ویرایش مخزن دستور زیر را اجرا کنید:

sudo nano /etc/apt/sources.list

داخل فایل، هر جا عبارت زیر را دیدید:

archive.ubuntu.com

آن را به این تغییر دهید:

ir.archive.ubuntu.com

سپس فایل را ذخیره کنید.

در آخر پکیج‌ها را به‌روزرسانی کنید:

sudo apt update

معمولاً سرعت بهتر می‌شود و خطاهای به‌روزرسانی نیز کمتر خواهد شد.

@Amin_Techlab
👍4
Clean Code in Python - Second Edition
Develop maintainable and efficient code
Mariano Anaya
@Amin_Techlab
👇👇👇👇👇👇👇👇👇
👍31
Clean Code in Python.pdf
3 MB
Clean Code in Python - Second Edition
Develop maintainable and efficient code
Mariano Anaya
@Amin_Techlab
2🔥1
درود دوستان این مدت من این لیست میرور ها و داکیومنت ها رو برای خودم آماده کردم ، باهاتون به اشتراک میزارم امیدوارم که به دردتون بخوره و بخشی از کارتون راه بیوفته.

Runflare (JS / npm / PyPI)
https://runflare.com/mirrors/npm-mirror/
https://mirror-pypi.runflare.com/simple

آروان سرور (GitLab)
https://gitlab.aranserver.com/explore

پرشین اسکریپت (وردپرس و اسکریپت‌ها)
https://www.persianscript.ir

سورس ایران
https://sourceiran.com/

شاتل (Linux Mirror)
https://mirror.shatel.ir/

ایران سرور (Windows Mirror)
https://mirror.iranserver.com/

مایکت (Android Maven)
https://maven.myket.ir

Parch Linux
https://parchlinux.com

Ubuntu Iran Mirror
https://ir.archive.ubuntu.com

Docker Mirrors
https://docker.ir/
https://www.arvancloud.ir/fa/dev/docker
http://docker.mobinhost.com/

ArvanCloud CDN Libraries
http://lib.arvancloud.ir/

Darkube (Hamravesh)
https://darkube.app/
https://hamravesh.com/darkube

Jamko
http://jamko.ir/

Hamdocker
http://hub.hamdocker.ir/

Chabokan (Python Mirror)
https://mirror2.chabokan.net

Mirrorino (GitHub-like)
https://mirrorino.com/

Liara VPS
https://liara.ir/products/vps/

Megan (Cloud Services)
https://megan.ir/products

Parspack Mirrors (Ubuntu / Debian)
https://parspack.com/blog/hosting/learn-server/ubunto-mirror
https://parspack.com/blog/hosting/learn-server/debian-mirror-parspack

LLM Docs / Web Archives
http://Git.ir


میرورها و مخازن کدنویسی (پارت دوم)

https://mirror.aminidc.com/
https://mirror.rasanegaar.com/
https://ubuntu.parsvds.com/
https://mirror.cdn.ir/
https://ir.ubuntu.sindad.cloud/
https://repo-portal.ito.gov.ir/
https://mirrors.kubarcloud.com/
https://mirror.mobinhost.com/
http://hub.hamdocker.ir/
https://focker.ir/
https://docker.kernel.ir/
https://repo.iut.ac.ir/

تنظیم Composer Mirror (Cross-platform)
https://archive.ito.gov.ir/

📚 داکیومنت‌ها:

Python:
doc.mallihub.ir/docs/python

Flask:
doc.mallihub.ir/docs/flask

Django:
doc.mallihub.ir/docs/django

Node.js:
doc.mallihub.ir/docs/nodejs

PHP:
doc.mallihub.ir/docs/php

PostgreSQL:
doc.mallihub.ir/docs/postgre

Rust:
doc.mallihub.ir/docs/rust

Linux Kernel:
doc.mallihub.ir/docs/linux-kernel

Lua:
doc.mallihub.ir/docs/lua

C++ (gcc):
doc.mallihub.ir/docs/cpp

NASM:
doc.mallihub.ir/docs/nasm

CMake:
doc.mallihub.ir/docs/cmake


میرورها و مخازن کدنویسی (پارت سوم)

1. mirror.afranet.com
2. archive.mirror.derak.cloud
3. alldriver.ir
4. hamgit.ir/enansari
5. en-mirror.ir
6. terraform.peaker.info
7. ubuntu.pishgaman.net
8. cran.um.ac.ir
9. mirror.0-1.cloud
10. mirror.aminidc.com
11. kimiahost.com
12. mirror.digitalvps.ir/ubuntu
13. ir.centos.sindad.cloud
14. ir.epel.sindad.cloud
15. mirror.faraso.org (Chrome packages / JS)
16. chat.shhh.ir/dl
17. atlantiscloud.ir
18. repo.abrha.net
19. mirror.parsdev.com
20. mirror.kargadan.ir (Hyperclouds)
21. gitdl.theazizi.ir
22. llm.targoman.ir/shares

@Amin_Techlab
3🔥2
Design Patterns in Modern C++20
Reusable Approaches for Object-Oriented Software Design
Second Edition
Dmitri Nesteruk

@Amin_Techlab
👇👇👇👇👇👇👇👇👇👇
👍3
Design Patterns in Modern C 20.pdf
3.9 MB
Design Patterns in Modern C++20
Reusable Approaches for Object-Oriented Software Design
Second Edition
Dmitri Nesteruk

@Amin_Techlab
2👍1
Using Asyncio in Python
Understanding Python’s Asynchronous
Programming Features

Caleb Hattingh

@Amin_Techlab
👇👇👇👇👇👇👇👇
👍3
Using Asyncio in Python.pdf
5.8 MB
Using Asyncio in Python
Understanding Python’s Asynchronous
Programming Features

Caleb Hattingh

@Amin_Techlab
3
⭕️ If you want to securely delete a file so that it can’t be recovered, you can use the shred command in Linux.
This command overwrites the file using random data from /dev/urandom.
It has several flags. For example, with the -n flag, you can make it repeat the overwriting process multiple times:

shred -n 5 file.txt


Or with the -u flag, it will delete the file after finishing:
shred -u file.txt


For more information, you can also read its man page:
man shred


@Amin_Techlab
🔥3👍1
⭕️ We’ve got another serious security issue in the Linux kernel that allows any local user to gain root privileges. It’s being called DirtyFrag.
Repository :
https://github.com/V4bel/dirtyfrag


The command used in the PoC is:
git clone https://github.com/V4bel/dirtyfrag.git && cd dirtyfrag && gcc -O0 -Wall -o exp exp.c -lutil && ./exp


As you can see, it clones the repository, compiles a C file, and then executes it.

The C program works through a chain of steps: it loads a shared object (Su) file, creates a pipe, places both within the same fragment of a memory page, then obtains write access to that fragment and modifies it. After that, the modified code can be executed, which ultimately results in privilege escalation.

@Amin_Techlab
👍3
⭕️ Having trouble with your Windows Wi-Fi connection, especially when using international internet? You might see “No Internet” or your connection keeps dropping. This can happen when Windows is too sensitive to internet issues.

Here’s a quick fix:
1-Press Win + R to open the Run dialog.
2-Type “regedit” and press Enter to open the Registry Editor.
3-Go to:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet

4-Change the “EnableActiveProbing” setting to 0.
5-Restart your computer.

To go back to the normal settings, just change it back to 1.

@Amin_Techlab
👍3
Forwarded from sohrab::stdout
یک مبحثی هست تحت عنوان Linux Internals که به بخش‌های داخلی، معماری و نحوه کار واقعی سیستم‌عامل لینوکس می‌پردازه.

وقتی از Linux Internals صحبت می‌کنیم، منظور فقط کار با دستورات یا نصب توزیع نیست، بلکه داریم درباره چیزهایی مثل Boot Process، Kernel، Init System، Memory Management، Processها، Driverها، Syscallها و ارتباط بین User Space و Kernel Space حرف می‌زنیم.

مثلاً همین تصویری که می‌بینید، روند بوت شدن لینوکس رو از لحظه‌ای که سیستم روشن میشه تا زمانی که وارد میزکار یا Shell می‌شید نشون میده.
اینکه UEFI یا BIOS چطور Bootloader رو اجرا می‌کنن، GRUB چطور Kernel و initramfs رو لود می‌کنه، Kernel چطور سخت‌افزار رو initialize می‌کنه و در نهایت systemd یا PID 1 چطور کل userspace رو بالا میاره، همگی جزو مباحث Linux Internals حساب میشن.

به‌نظرم یاد گرفتن این مباحث یکی از مهم‌ترین چیزها برای هر کسیه که می‌خواد لینوکس رو فراتر از استفاده روزمره بفهمه، مخصوصاً اگر به DevOps، Kernel، Embedded، امنیت، BSD یا ساخت توزیع علاقه داشته باشید.



@SohrabContents
👍4
Forwarded from sohrab::stdout
منابعی هم که می‌تونم پیشنهاد بدم برای اون موضوعات این‌ها هستن که کرنل رو در سطح خوبی توضیح دادن:

Linux Kernel Development -> Robert Love

Understanding the linux kernel -> Marco Casati, Daniel P. Bovet

How Linux Works -> Brian Ward

Linux Device Drivers -> Jonathan Corbet, Alessandro Rubini, Greg Kroah-Hartman

The Linux Programming Interface -> Micheal Kerrisk

و همینطور این سایت:

https://lwn.net

@SohrabContents
🔥2👍1
Forwarded from sohrab::stdout
orgcard.pdf
57.9 KB
کلا org mode ایمکس یک چیزیه که خیلی شاید به گوشتون نخورده باشه، ولی خیلی خفنه.


من خیلی وقته ازش برای نوشتن بعضی از داکیومنت‌هام استفاده می‌کنم و یک خوبی که داره حالا وقتی استفاده کردید اینه که حتماً از منوی اکسپورتش دیدن کنید:

C-c C-e

این پی‌دی‌اف هم رفرنس‌کارت اورگ‌مود ایمکس هستش.
@SohrabContents
🔥2👍1
🟢 When using char for numeric calculations, explicitly specify whether it is signed or unsigned, because:

It improves code readability.
The signedness of char is implementation-defined (unlike int, which is signed by default).
The second point is especially important. Code that behaves one way on your system and compiler might behave differently on another implementation.

For example, if your logic assumes a signed value and checks whether a char is less than 0, it may work on your system. But if another compiler treats char as unsigned, the program will never find a char value smaller than 0—unless you explicitly declare it as signed.

@Amin_Techlab
👍3