دانشنامه مارال هاست دانشنامه مارال هاست
  • صفحه اصلی
  • مقالات
    • هاست اشتراکی
    • دامنه
    • سرور مجازی
    • کنترل پنل سی‌پنل
    • کنترل پنل پلسک
    • کنترل پنل دایرکت ادمین
    • ایمیل
    • CloudLinux
    • Cloudflare
  • تماس با ما
دانشنامه مارال هاست دانشنامه مارال هاست
دانشنامه مارال هاست دانشنامه مارال هاست
  • صفحه اصلی
  • مقالات
    • هاست اشتراکی
    • دامنه
    • سرور مجازی
    • کنترل پنل سی‌پنل
    • کنترل پنل پلسک
    • کنترل پنل دایرکت ادمین
    • ایمیل
    • CloudLinux
    • Cloudflare
  • تماس با ما
امنیت
  • Folder icon closed Folder open iconCIA Triad چیست؟ آشنایی با سه اصل اساسی امنیت اطلاعات
  • Folder icon closed Folder open iconAttack Surface چیست؟ آشنایی با سطح حمله در امنیت سایبری
  • Folder icon closed Folder open iconThreat چیست؟ آشنایی با مفهوم تهدید در امنیت سایبری
  • Folder icon closed Folder open iconVulnerability چیست؟ آشنایی با آسیب‌پذیری در امنیت سایبری
  • Folder icon closed Folder open iconExploit چیست؟ آشنایی با مفهوم اکسپلویت در امنیت سایبری
  • Folder icon closed Folder open iconRisk چیست؟ آشنایی با مفهوم ریسک در امنیت سایبری
  • Folder icon closed Folder open iconCVE چیست؟ آشنایی با سیستم شماره‌گذاری آسیب‌پذیری‌های امنیتی
  • Folder icon closed Folder open iconCVSS چیست؟ آشنایی با سیستم امتیازدهی آسیب‌پذیری‌های امنیتی
  • Folder icon closed Folder open iconبعد از خرید سرور مجازی لینوکس(VPS)، اولین کارهایی که باید انجام دهید
  • Folder icon closed Folder open iconآموزش تغییر Hostname سرور در لینوکس
  • Folder icon closed Folder open iconآموزش تنظیم صحیح Timezone و NTP در لینوکس
  • Folder icon closed Folder open iconآموزش بروزرسانی کامل سیستم‌عامل لینوکس همه توزیع ها
  • Folder icon closed Folder open iconآموزش ساخت کاربر جدید و حذف استفاده روزمره از Root در لینوکس
  • Folder icon closed Folder open iconآموزش تنظیم صحیح sudo در لینوکس
  • Folder icon closed Folder open iconآموزش تنظیم Banner ورود به SSH در لینوکس
  • Folder icon closed Folder open iconآموزش مدیریت Password Policy در لینوکس
  • Folder icon closed Folder open iconآموزش نصب و راه‌اندازی SSH Key Authentication در لینوکس
  • Folder icon closed Folder open iconآموزش غیرفعال کردن ورود مستقیم Root از طریق SSH
  • Folder icon closed Folder open iconتغییر پورت SSH؛ آیا واقعاً امنیت سرور را افزایش می‌دهد؟
  • Folder icon closed Folder open iconآموزش محدود کردن کاربران مجاز SSH در لینوکس
  • Folder icon closed Folder open iconآموزش محدود کردن دسترسی SSH بر اساس IP در لینوکس
  • Folder icon closed Folder open iconآموزش تنظیم LoginGraceTime در SSH؛ کاهش زمان انتظار برای احراز هویت
  • Folder icon closed Folder open iconآموزش تنظیم MaxAuthTries در SSH؛ محدود کردن تعداد تلاش‌های ورود ناموفق
  • Folder icon closed Folder open iconآموزش بررسی لاگ‌های SSH در لینوکس
  • Folder icon closed Folder open iconآموزش عیب‌یابی مشکلات SSH در لینوکس
  • Folder icon closed Folder open iconآموزش کامل UFW در لینوکس؛ راه‌اندازی، مدیریت و ایمن‌سازی فایروال سرور
  • Folder icon closed Folder open iconnftables چیست؟ آشنایی با فایروال نسل جدید لینوکس و جایگزین iptables
  • Folder icon closed Folder open iconآموزش کامل Firewalld در لینوکس
  • Folder icon closed Folder open iconآموزش کامل ConfigServer Security & Firewall (CSF)
  • Folder icon closed Folder open iconآموزش مشاهده Loginهای اخیر در لینوکس
  • Folder icon closed Folder open iconآموزش بررسی پردازش‌های مشکوک در لینوکس
  • Folder icon closed Folder open iconآموزش بررسی Cron Jobهای مشکوک در لینوکس
  • Folder icon closed Folder open iconآموزش کامل Fail2Ban در لینوکس؛ نصب و راه‌اندازی
  • Folder icon closed Folder open iconآموزش نصب RKHunter در لینوکس
  • Folder icon closed Folder open iconآموزش نصب Chkrootkit در لینوکس
  • Folder icon closed Folder open iconآموزش اسکن سرور با RKHunter و Chkrootkit
  • Folder icon closed Folder open iconآموزش نصب، پیکربندی و اسکن سرور با AIDE در لینوکس
  • Folder icon closed Folder open iconآموزش نصب، پیکربندی و استفاده از Auditd در لینوکس
  • Folder icon closed Folder open iconآموزش نصب، اسکن و تحلیل امنیت سرور با Lynis در لینوکس
  • Folder icon closed Folder open iconآموزش نصب، بروزرسانی و اسکن سرور با ClamAV در لینوکس
  • Folder icon closed Folder open iconآموزش Hardening وب‌سرور Nginx
  • Folder icon closed Folder open iconآموزش Hardening وب‌سرور Apache
  • Folder icon closed Folder open iconآموزش Hardening PHP
  • Folder icon closed Folder open iconآموزش Hardening پایگاه داده MySQL
  • Folder icon closed Folder open iconآموزش Hardening سرویس Redis
  • Folder icon closed Folder open iconآموزش Hardening سرویس Docker
  • Folder icon closed Folder open iconآموزش Hardening سرویس FTP
  • Folder icon closed Folder open iconشناسایی Backdoor و ارتباطات مخفی در سرور لینوکس
  • Folder icon closed Folder open iconاسکن آسیب‌پذیری با Nmap NSE
  • Folder icon closed Folder open iconآموزش Socat
  • Folder icon closed Folder open iconآموزش WhatWeb در لینوکس
  • Folder icon closed Folder open iconشناسایی تکنولوژی سایت‌ها
  • Folder icon closed Folder open iconآموزش Amass برای کشف Subdomain
  • Folder icon closed Folder open iconشناسایی Reverse Shell در لینوکس
  • Folder icon closed Folder open iconپیدا کردن فایل‌های SUID مشکوک
  • Folder icon closed Folder open iconبررسی کاربران Administrator مخفی در ویندوز
  • Folder icon closed Folder open iconبررسی PowerShell History
  • Folder icon closed Folder open iconشناسایی Reverse Shell در ویندوز
امنیت

شناسایی Backdoor و ارتباطات مخفی در سرور لینوکس

شناسایی Backdoor و ارتباطات مخفی در سرور لینوکس

مقدمه

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

این ارتباطات ممکن است از طریق:

  • Process مشکوک
  • Cron Job
  • Systemd Service
  • SSH Key ناشناس
  • پورت Listening غیرمنتظره
  • ارتباط Outbound به IP ناشناس
  • فایل اجرایی مخفی
  • Web Shell
  • User Account غیرمجاز
  • تغییر فایل‌های سیستمی

ایجاد شوند.

در این مقاله، روش‌های عملی شناسایی Backdoor و ارتباطات مشکوک در لینوکس را مرحله‌به‌مرحله بررسی می‌کنیم.

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


Backdoor چیست؟

Backdoor روشی برای دسترسی به سیستم است که مسیر عادی احراز هویت یا کنترل‌های امنیتی را دور می‌زند.

برای مثال، مهاجم ممکن است پس از نفوذ اولیه:

  • یک User جدید ایجاد کند.
  • SSH Key خود را اضافه کند.
  • یک سرویس مخفی راه‌اندازی کند.
  • Cron Job ایجاد کند.
  • یک فایل مخرب را هنگام Boot اجرا کند.
  • یک Process ایجاد کند که دائماً به یک IP خارجی متصل شود.

هدف معمولاً حفظ دسترسی به سیستم حتی پس از رفع آسیب‌پذیری اولیه است.


نشانه‌های احتمالی وجود Backdoor

نشانه‌هایی که باید بررسی شوند شامل:

  • CPU یا RAM غیرعادی
  • Connectionهای ناشناس
  • پورت‌های جدید
  • Processهای ناشناس
  • Restart شدن Process بعد از Kill
  • کاربران جدید
  • SSH Key ناشناس
  • Cron Job مشکوک
  • سرویس‌های جدید Systemd
  • فایل‌های جدید در /tmp
  • فایل‌های اجرایی در مسیرهای غیرمعمول
  • تغییر ناگهانی فایل‌های وب‌سایت
  • افزایش ترافیک Outbound
  • Login از IP ناشناس

هیچ‌کدام از این موارد به‌تنهایی اثبات‌کننده نفوذ نیستند و باید در کنار شواهد دیگر تحلیل شوند.


مرحله اول: بررسی پورت‌های Listening

یکی از اولین بررسی‌ها:

sudo ss -tulpn

این دستور اطلاعات زیر را نمایش می‌دهد:

  • TCP
  • UDP
  • Listening Port
  • Process
  • PID

نمونه:

tcp LISTEN 0 128 0.0.0.0:22
tcp LISTEN 0 511 0.0.0.0:80
tcp LISTEN 0 511 0.0.0.0:443
tcp LISTEN 0 128 0.0.0.0:49152

اگر پورت 49152 را نمی‌شناسید، باید Process مربوط به آن بررسی شود.


پیدا کردن Process مربوط به پورت مشکوک

sudo ss -ltnp | grep :49152

مثلاً:

users:(("unknown",pid=28451,fd=5))

اکنون PID مشخص است:

28451

بررسی Process

ps -fp 28451

مسیر فایل اجرایی:

readlink -f /proc/28451/exe

Command Line:

tr '\0' ' ' < /proc/28451/cmdline

Directory کاری:

readlink -f /proc/28451/cwd

بررسی Parent Process

ps -o pid,ppid,user,cmd -p 28451

سپس Parent PID را بررسی کنید.

برای مشاهده درخت Processها:

pstree -p

یا:

pstree -ap

این کار مشخص می‌کند Process مشکوک توسط چه برنامه‌ای اجرا شده است.


بررسی تمام ارتباطات فعال

sudo ss -tunap

برای فقط Connectionهای Established:

sudo ss -tnp state established

پیدا کردن ارتباطات Outbound

برای مشاهده Connectionهای خارجی:

sudo ss -tnp

به ستون:

Peer Address:Port

توجه کنید.

مثلاً:

192.168.1.10:49134 → 203.0.113.50:4444

اگر سرویس شناخته‌شده‌ای نباید به آن IP متصل باشد، Connection باید بررسی شود.


پیدا کردن Process متصل به IP مشکوک

sudo ss -tnp | grep 203.0.113.50

یا:

sudo lsof -i

برای یک IP خاص:

sudo lsof -i @203.0.113.50

بررسی Processهای دارای ارتباط شبکه

sudo lsof -i -nP

این دستور می‌تواند اطلاعات مربوط به:

  • Process
  • PID
  • User
  • Protocol
  • Local Address
  • Remote Address

را نمایش دهد.


بررسی Processهای مشکوک

ps aux

برای مرتب‌سازی بر اساس CPU:

ps aux --sort=-%cpu | head -20

بر اساس RAM:

ps aux --sort=-%mem | head -20

بررسی Processهایی که از /tmp اجرا شده‌اند

یکی از مسیرهای رایج برای فایل‌های موقت:

/tmp
/var/tmp
/dev/shm

برای بررسی:

ps aux | grep '/tmp'
ps aux | grep '/var/tmp'
ps aux | grep '/dev/shm'

بررسی فایل‌های اجرایی در /tmp

find /tmp -type f -executable -ls

همچنین:

find /var/tmp -type f -executable -ls
find /dev/shm -type f -executable -ls

وجود فایل اجرایی در این مسیرها الزاماً مخرب نیست، اما نیاز به بررسی دارد.


بررسی Processهای حذف‌شده که هنوز اجرا هستند

یکی از تکنیک‌های رایج این است که فایل اجرایی پس از اجرا حذف شود ولی Process همچنان در Memory باقی بماند.

بررسی:

sudo lsof +L1

یا:

sudo lsof | grep deleted

اگر فایل اجرایی ناشناسی با (deleted) مشاهده شد، آن Process را دقیق‌تر بررسی کنید.


بررسی کاربران سیستم

cat /etc/passwd

برای فقط کاربران دارای Shell:

awk -F: '$7 !~ /(nologin|false)$/ {print $1,$3,$6,$7}' /etc/passwd

بررسی کاربران دارای UID صفر

awk -F: '$3 == 0 {print $1}' /etc/passwd

در حالت عادی معمولاً فقط:

root

باید UID برابر صفر داشته باشد.


بررسی Loginهای اخیر

last

برای Loginهای ناموفق:

lastb

در برخی توزیع‌ها ممکن است نیاز به دسترسی Root باشد:

sudo lastb

بررسی کاربران آنلاین

who

یا:

w

بررسی SSH Keyهای مشکوک

یکی از روش‌های Persistence اضافه کردن SSH Key است.

بررسی:

find /root /home -name authorized_keys -type f -print

سپس:

cat /root/.ssh/authorized_keys

برای کاربران دیگر:

cat /home/USERNAME/.ssh/authorized_keys

هر Key ناشناس باید بررسی شود.


بررسی فایل‌های SSH تغییرکرده

ls -la /root/.ssh

و:

stat /root/.ssh/authorized_keys

برای مشاهده زمان تغییر فایل.


بررسی Cron Jobها

Cron یکی از رایج‌ترین روش‌های Persistence است.

Cron کاربر فعلی:

crontab -l

Cron کاربر Root:

sudo crontab -l

بررسی Cronهای سیستمی

ls -la /etc/cron*

و:

cat /etc/crontab

بررسی Cron تمام کاربران

for user in $(cut -f1 -d: /etc/passwd); do
    echo "===== $user ====="
    crontab -u "$user" -l 2>/dev/null
done

به مواردی مانند اجرای فایل از:

/tmp
/dev/shm
curl
wget
bash -c
python
perl

با دقت بیشتری توجه کنید.


بررسی Systemd Serviceها

مهاجم ممکن است Backdoor را به شکل Service اجرا کند.

مشاهده Serviceهای فعال:

systemctl --type=service --state=running

مشاهده Serviceهای فعال‌شده هنگام Boot

systemctl list-unit-files --type=service | grep enabled

بررسی Serviceهای جدید

فایل‌های Service معمولاً در مسیرهای زیر قرار دارند:

/etc/systemd/system/
/usr/lib/systemd/system/
/lib/systemd/system/

برای بررسی فایل‌های جدید:

find /etc/systemd/system -type f -ls

مشاهده محتوای یک Service مشکوک

systemctl cat suspicious.service

همچنین:

systemctl status suspicious.service

به گزینه:

ExecStart=

توجه ویژه داشته باشید.


بررسی Timerهای Systemd

Persistence فقط با Service انجام نمی‌شود؛ ممکن است از Timer استفاده شود.

systemctl list-timers --all

بررسی Startup Scriptها

مسیرهای زیر را بررسی کنید:

/etc/rc.local
/etc/profile
/etc/bash.bashrc
/etc/profile.d/
/root/.bashrc
/root/.profile

مثلاً:

cat /etc/rc.local

بررسی تغییرات فایل‌های اخیر

برای مشاهده فایل‌های تغییرکرده در 24 ساعت گذشته:

find /etc -type f -mtime -1 -ls

برای /usr/local:

find /usr/local -type f -mtime -1 -ls

برای /var/www:

find /var/www -type f -mtime -1 -ls

بررسی فایل‌های جدید در چند روز اخیر

find / -xdev -type f -mtime -3 2>/dev/null

روی سرورهای بزرگ خروجی ممکن است بسیار زیاد باشد، بنابراین بهتر است مسیرهای حساس را جداگانه بررسی کنید.


بررسی فایل‌های SUID

فایل‌های SUID می‌توانند سطح دسترسی بالاتری به Process بدهند.

بررسی:

find / -perm -4000 -type f 2>/dev/null

وجود SUID به‌خودی‌خود مخرب نیست و بسیاری از فایل‌های استاندارد سیستم چنین Permissionی دارند.

هدف شناسایی فایل‌های ناشناخته یا جدید است.


بررسی SGID

find / -perm -2000 -type f 2>/dev/null

بررسی فایل‌های Hidden غیرعادی

مثلاً:

find /tmp /var/tmp /dev/shm -type f -name ".*" -ls

بررسی Web Shell

روی Web Serverها یکی از مهم‌ترین Backdoorها Web Shell است.

مسیر سایت را بررسی کنید:

find /var/www -type f -mtime -7 -ls

برای فایل‌های PHP:

find /var/www -type f -name "*.php" -mtime -7 -ls

فایل‌هایی که اخیراً تغییر کرده‌اند باید با نسخه سالم یا Backup مقایسه شوند.


بررسی Patternهای مشکوک در PHP

برای بررسی اولیه:

grep -RniE 'base64_decode|eval\(|shell_exec|system\(|passthru|proc_open|popen' /var/www 2>/dev/null

وجود این توابع الزاماً به معنی Web Shell نیست. بسیاری از نرم‌افزارهای سالم نیز ممکن است از برخی از آن‌ها استفاده کنند. نتیجه باید دستی تحلیل شود.


بررسی Logهای SSH

Ubuntu / Debian:

sudo grep sshd /var/log/auth.log

AlmaLinux / Rocky Linux:

sudo grep sshd /var/log/secure

بررسی Login موفق

Ubuntu:

grep "Accepted" /var/log/auth.log

AlmaLinux:

grep "Accepted" /var/log/secure

بررسی Failed Login

grep "Failed password" /var/log/auth.log

یا:

grep "Failed password" /var/log/secure

بررسی Journal

journalctl -p warning

برای SSH:

journalctl -u ssh

یا:

journalctl -u sshd

بررسی اتصال‌های شبکه با tcpdump

اگر Process ناشناسی مرتباً ارتباط Outbound ایجاد می‌کند، می‌توانید ترافیک را Capture کنید.

مثلاً برای IP مشکوک:

sudo tcpdump -i any host 203.0.113.50

برای ذخیره:

sudo tcpdump -i any host 203.0.113.50 -w suspicious.pcap

سپس فایل را می‌توان با Wireshark تحلیل کرد.


بررسی DNS Queryهای مشکوک

برخی بدافزارها برای ارتباط با سرور خارجی از DNS استفاده می‌کنند.

Capture:

sudo tcpdump -i any port 53

یا با TShark:

sudo tshark -i any -f "port 53"

به دامنه‌های غیرمعمول یا Queryهای تکرارشونده توجه کنید.


بررسی اتصال‌های دوره‌ای

اگر Process هر چند دقیقه یک Connection ایجاد می‌کند، احتمالاً یکی از موارد زیر وجود دارد:

  • Cron Job
  • Timer
  • Service
  • Agent
  • Monitoring Software
  • Malware

بنابراین زمان Connection را با:

journalctl

و:

systemctl list-timers --all

و Cronها مقایسه کنید.


بررسی Network Namespaceها

روی سیستم‌های دارای Docker یا Container ممکن است Processها داخل Namespace دیگری باشند.

بررسی:

ip netns list

Docker:

docker ps

و:

docker network ls

ممکن است Connection مشکوک متعلق به Container باشد، نه Host اصلی.


بررسی Containerهای ناشناس

docker ps -a

بررسی Imageها:

docker images

بررسی Processهای داخل Container:

docker top CONTAINER_NAME

بررسی Mountهای غیرعادی

mount

یا:

findmnt

Mount ناشناخته می‌تواند نشانه‌ای از Container، Network Storage یا تغییر غیرمنتظره باشد و باید با ساختار عادی سرور مقایسه شود.


بررسی Packageهای نصب‌شده اخیر

در Debian / Ubuntu:

grep " install " /var/log/dpkg.log

در سیستم‌های DNF:

dnf history

و:

dnf history info

بررسی صحت Packageها

در سیستم‌های RPM:

rpm -Va

در Debian می‌توانید از ابزارهایی مانند debsums استفاده کنید.

این روش برای بررسی تغییر فایل‌های متعلق به Packageها مفید است.


بررسی Rootkit با RKHunter

در صورت نصب:

sudo rkhunter --check

بررسی با Chkrootkit

sudo chkrootkit

هیچ‌کدام از این ابزارها به‌تنهایی تضمین نمی‌کنند که سیستم سالم است؛ خروجی آن‌ها باید همراه با بررسی دستی تحلیل شود.


اسکن با ClamAV

برای مثال:

sudo clamscan -r /var/www

یا:

sudo clamscan -r /tmp

استفاده از Lynis

sudo lynis audit system

Lynis بیشتر ابزار Security Auditing و Hardening است و می‌تواند تنظیمات ضعیف یا موارد نیازمند بررسی را مشخص کند.


بررسی Integrity با AIDE

اگر AIDE از قبل روی سیستم پیکربندی شده باشد:

sudo aide --check

AIDE زمانی بیشترین ارزش را دارد که Database سالم آن قبل از حادثه ایجاد شده باشد.


بررسی Auditd

اگر Auditd فعال باشد:

systemctl status auditd

مشاهده Eventها:

ausearch -ts today

یا برای فایل مشخص:

ausearch -f /etc/passwd

شناسایی ارتباط مشکوک با یک روش سریع

ابتدا:

sudo ss -tunap

اگر Connection ناشناسی مشاهده شد:

sudo lsof -i -nP

سپس PID را پیدا کنید:

ps -fp PID

مسیر Process:

readlink -f /proc/PID/exe

Command:

tr '\0' ' ' < /proc/PID/cmdline

Parent:

ps -o pid,ppid,user,cmd -p PID

بعد Persistence را بررسی کنید:

crontab -l
systemctl list-timers --all
systemctl list-unit-files --type=service | grep enabled

اگر Backdoor پیدا شد چه کنیم؟

اگر شواهد قوی از نفوذ وجود دارد، فقط حذف فایل مشکوک کافی نیست.

اقدامات اولیه:

  1. سرور را از شبکه غیرضروری ایزوله کنید.
  2. قبل از حذف شواهد، Log و اطلاعات لازم را ذخیره کنید.
  3. IPها و Processهای مشکوک را ثبت کنید.
  4. Credentialهای در معرض خطر را تغییر دهید.
  5. SSH Keyهای ناشناس را حذف کنید.
  6. Userهای غیرمجاز را غیرفعال کنید.
  7. Persistence Mechanism را حذف کنید.
  8. آسیب‌پذیری اولیه را شناسایی کنید.
  9. سیستم و نرم‌افزارها را Patch کنید.
  10. در نفوذهای جدی، Rebuild سرور از منبع سالم را در نظر بگیرید.

چرا فقط Kill کردن Process کافی نیست؟

اگر اجرا کنید:

kill PID

ممکن است Process چند ثانیه بعد دوباره ایجاد شود.

دلیل آن می‌تواند:

  • Cron
  • Systemd
  • Supervisord
  • Docker
  • Kubernetes
  • Startup Script

باشد.

بنابراین باید منبع اجرای Process شناسایی شود، نه فقط خود Process.


اشتباهات رایج

  • Kill کردن Process بدون بررسی Parent
  • حذف فایل قبل از ثبت اطلاعات
  • فرض مخرب بودن هر Connection خارجی
  • اعتماد کامل به یک Antivirus
  • نادیده گرفتن Cron Jobها
  • بررسی نکردن SSH Keyها
  • پاک کردن Logها
  • Reboot کردن سرور قبل از جمع‌آوری اطلاعات
  • تصور اینکه بسته بودن پورت‌های ورودی یعنی Backdoor وجود ندارد

بهترین روش‌ها

  • Baseline مشخصی از پورت‌ها و Processهای عادی سرور داشته باشید.
  • از Auditd و AIDE قبل از رخداد امنیتی استفاده کنید.
  • Logها را روی سرور دیگری نیز ذخیره کنید.
  • Loginهای SSH را مانیتور کنید.
  • تغییر فایل‌ها را بررسی کنید.
  • Outbound Traffic را نیز مانند Inbound Traffic مانیتور کنید.
  • سرویس‌های غیرضروری را غیرفعال کنید.
  • SSH Keyها و Userها را دوره‌ای Audit کنید.
  • از EDR/HIDS در سرورهای حساس استفاده کنید.

چک‌لیست شناسایی Backdoor

موارد زیر را بررسی کنید:

  • Listening Portها
  • Established Connectionها
  • Outbound Traffic
  • Processها
  • Parent Process
  • /proc/PID/exe
  • Cron Jobs
  • Systemd Services
  • Systemd Timers
  • SSH Keys
  • User Accounts
  • UID 0 Accounts
  • Login Logs
  • /tmp
  • /var/tmp
  • /dev/shm
  • Web Root
  • فایل‌های SUID
  • Package Integrity
  • Docker Containers
  • DNS Queryها
  • Audit Logs
  • File Integrity

دستورات کاربردی در یک نگاه

پورت‌ها:

sudo ss -tulpn

Connectionها:

sudo ss -tnp state established

Processهای شبکه:

sudo lsof -i -nP

Processها:

ps aux

Process Tree:

pstree -ap

Cron:

sudo crontab -l

Serviceها:

systemctl --type=service --state=running

Timerها:

systemctl list-timers --all

Loginها:

last

SSH Keyها:

find /root /home -name authorized_keys -type f -print

فایل‌های حذف‌شده در حال اجرا:

sudo lsof +L1

Capture شبکه:

sudo tcpdump -i any

مطالعات بیشتر

  • مستندات رسمی systemd برای Service و Timerها

جمع‌بندی

شناسایی Backdoor در لینوکس فقط با اجرای یک Antivirus یا مشاهده یک Process انجام نمی‌شود. بررسی امنیتی باید چندین بخش سیستم شامل شبکه، Processها، کاربران، SSH، Cron، Systemd، فایل‌ها و Logها را پوشش دهد.

یکی از بهترین نقاط شروع، اجرای:

sudo ss -tunap

و:

sudo lsof -i -nP

برای شناسایی ارتباطات شبکه‌ای و سپس بررسی PID، Parent Process و Persistence Mechanism مربوط به هر Connection مشکوک است.

اگر شواهد نفوذ جدی مشاهده شود، حذف فایل یا Process مشکوک به‌تنهایی کافی نیست و باید علت اولیه نفوذ، روش Persistence و میزان دسترسی مهاجم نیز بررسی شود.

کیان پور

هنوز نیاز به کمک دارید؟

آیا سوالی دارید؟

آیا این مقاله برای شما مفید بود؟ بله 1 خیر

نظرات خود را بنویسید... لغو پاسخ

اشتراک گذاری این مقاله

شناسایی Backdoor و ارتباطات مخفی در سرور لینوکس

کپی کردن لینک

Clipboard Icon

جدیدترین مقالات

آموزش نصب و راه‌اندازی RustDesk Server با Docker
آموزش نصب و راه‌اندازی RustDesk Server با Docker
2 minutes جولای 2, 2026
آموزش نصب و راه‌اندازی Matrix Synapse + Element Web + Coturn با Docker روی ...
4 minutes جولای 2, 2026
CXS چیست و چگونه کار می‌کند
1 minute می 3, 2026
ساخت سرور چت المنت بروی لینوکس
5 minutes آوریل 25, 2026
Geo Routing و Geo DNS
2 minutes آوریل 22, 2026

تقویم

سپتامبر 2026
شیدسچپج
 1234
567891011
12131415161718
19202122232425
2627282930 
« جولای    

عضویت

جدیدترین پست‌ها

آموزش نصب و راه‌اندازی RustDesk Server با Docker
آموزش نصب و راه‌اندازی RustDesk Server با Docker
2 minutes جولای 2, 2026
آموزش نصب و راه‌اندازی Matrix Synapse + Element Web + Coturn با Docker روی Ubuntu 24.04
4 minutes جولای 2, 2026
CXS چیست و چگونه کار می‌کند
1 minute می 3, 2026
ساخت سرور چت المنت بروی لینوکس
5 minutes آوریل 25, 2026
Geo Routing و Geo DNS
2 minutes آوریل 22, 2026

سلام