چک لیست Hardening انواع دیتابیس ها و انوع وب سرور ها

  1. به‌روزرسانی سیستم‌عامل به آخرین نسخه پایدار
  2. نصب آخرین نسخه پایدار وب‌سرور (Apache/Nginx/IIS)
  3. نصب آخرین نسخه پایدار پایگاه‌داده (MySQL/PostgreSQL/SQL Server)
  4. غیرفعال‌سازی سرویس‌ها و ماژول‌های غیرضروری
  5. پیکربندی فایروال برای محدودسازی دسترسی به پورت‌های وب و دیتابیس
  6. استفاده از حساب کاربری غیر ریشه برای اجرای سرویس‌ها
  7. غیرفعال‌سازی فهرست‌گذاری (Directory Listing) در وب‌سرور
  8. تنظیم محدودیت اندازه آپلود فایل‌ها در وب‌سرور
  9. پیکربندی HTTPS با استفاده از گواهی معتبر و TLS 1.2 یا 1.3
  10. غیرفعال‌سازی SSL و پروتکل‌های قدیمی (TLS 1.0/1.1)
  11. محدودسازی آدرس IP مجاز برای دسترسی به phpMyAdmin یا ابزارهای مدیریت DB
  12. استفاده از رمز عبور قوی برای حساب‌های root و admin در دیتابیس
  13. غیرفعال‌سازی دسترسی ریموت به root در MySQL
  14. فعال‌سازی فایروال اپلیکیشن وب (WAF)
  15. محدودسازی روش‌های HTTP (فقط GET و POST)
  16. پیکربندی ماژول امنیتی mod_security برای Apache
  17. پیکربندی ماژول امنیتی ngx_http_limit_req_module برای Nginx
  18. استفاده از SELinux یا AppArmor برای کنترل سطح دسترسی
  19. پیکربندی Fail2Ban برای جلوگیری از Brute Force
  20. پیکربندی سیستم لاگینگ مرکزی و فعال‌سازی audit logs
  21. پیکربندی logrotate برای مدیریت حجم لاگ‌ها
  22. محدودسازی دسترسی پوشه‌های حساس سایت به IP مشخص
  23. استفاده از Content-Security-Policy (CSP) در هدرها
  24. پیکربندی امنیتی HSTS در وب‌سرور
  25. غیرفعال‌سازی توابع خطرناک در PHP (exec, shell_exec, system)
  26. محدودسازی سطح دسترسی فایل‌های config (مانند wp-config.php)
  27. استفاده از ابزارهای بررسی آسیب‌پذیری مانند Lynis یا OpenVAS
  28. ایجاد کاربران جداگانه دیتابیس با حداقل سطح دسترسی برای هر اپلیکیشن
  29. غیرفعال‌سازی Anonymous Access در SQL Server
  30. غیرفعال‌سازی Remote Admin Interfaces اگر استفاده نمی‌شوند
  31. فعال‌سازی Audit Trails در DBMS
  32. پیکربندی رمزنگاری ارتباطات پایگاه‌داده (SSL/TLS)
  33. محدودسازی زمان اجرای کوئری در سرور دیتابیس
  34. تنظیم محدودیت حداکثر تعداد اتصال همزمان به DBMS
  35. پیکربندی ACL دقیق روی فایل‌ها و فولدرهای دیتابیس و وب‌سرور
  36. غیرفعال‌سازی Directory Browsing در IIS
  37. پیکربندی Request Filtering در IIS برای جلوگیری از درخواست‌های غیرمجاز
  38. محدود کردن طول URL و Header برای کاهش خطرات DoS
  39. ایجاد نسخه پشتیبان منظم و ذخیره امن در محل جداگانه
  40. فعال‌سازی Data-at-Rest Encryption برای پایگاه داده
  41. فعال‌سازی Data-in-Transit Encryption برای اتصال کلاینت‌ها
  42. استفاده از ابزارهایی مانند Fail2Ban یا RdpGuard روی سرور
  43. استفاده از ابزارهای تغییر نام صفحه لاگین مدیریتی
  44. پیکربندی alert در زمان تغییرات مشکوک در فایل‌ها و پایگاه داده
  45. پیکربندی حداقل طول و پیچیدگی رمز عبور در DBMS
  46. پیکربندی احراز هویت چند مرحله‌ای (MFA) در پنل مدیریت
  47. غیرفعال‌سازی اجرای اسکریپت در پوشه Upload سایت
  48. محدودسازی دسترسی از سرور دیتابیس فقط به آدرس‌های مجاز
  49. استفاده از تغییر پورت‌های پیش‌فرض در DBMS و وب‌سرور
  50. بررسی مرتب فایل‌های لاگ برای الگوهای حمله
  51. تنظیمات سطح دسترسی خواندن/نوشتن روی فایل‌های لاگ
  52. پیکربندی اقدامات اتوماتیک در زمان مشاهده حمله (IP Block)
  53. استفاده از Static Code Analysis برای اپلیکیشن وب
  54. پیکربندی حفاظت در برابر SQL Injection در لایه برنامه
  55. استفاده از View به جای دسترسی مستقیم به جداول در SQL
  56. استفاده از Stored Procedure برای کوئری‌های مهم
  57. غیرفعال‌سازی Extended Stored Procedures غیرضروری در SQL Server
  58. فعال‌سازی رمزنگاری Transparent Data Encryption (TDE) در SQL
  59. فعال‌سازی محافظت از پورت 3306 در MySQL با فایروال
  60. محدود کردن زمان Session Timeout برای پنل‌های مدیریت
  61. استفاده از Web Application Scanner به‌صورت دوره‌ای
  62. استفاده از محیط Stage/Testing مجزا از محیط Production
  63. پاکسازی اطلاعات پیش‌فرض از وب‌سرور (index.html نمونه، README)
  64. حذف اکانت‌های پیش‌فرض یا تستی از DBMS و سرور
  65. نصب ضدویروس/ضدبدافزار به‌روز شده روی سرور
  66. غیرفعال‌سازی ارتباطات خروجی غیرضروری از سرور
  67. تنظیم alert برای افزایش ناگهانی مصرف منابع سیستم
  68. بررسی سطح دسترسی روی دایرکتوری‌های اپلیکیشن
  69. تنظیم Logging مناسب برای MySQL/PostgreSQL
  70. تنظیم قواعد Row-level Security در پایگاه‌های داده حساس
  71. پیکربندی password expiration برای حساب‌های دیتابیس
  72. استفاده از ابزارهای بررسی تغییرات فایل (AIDE یا OSSEC)
  73. تنظیم محدودیت‌های زمان‌بندی Cron برای Backup
  74. غیرفعال‌سازی بازتاب خطاهای دقیق SQL در صفحات وب
  75. ایجاد Snapshot امن از کانفیگ‌های وب‌سرور و دیتابیس
  76. استفاده از Reverse Proxy برای محافظت از وب‌سرور اصلی
  77. پیکربندی Failover و Replication امن بین سرورهای دیتابیس
  78. محدودسازی تغییر ساختار جداول به ادمین‌های خاص
  79. بررسی تطبیق هش فایل‌ها با نسخه‌های امن قبلی
  80. پیکربندی امنیتی مناسب فایل‌های `robots.txt` و `.htaccess`
  81. استفاده از ابزارهای تشخیص نفوذ (IDS/IPS)
  82. پیکربندی Logging جداگانه برای خطاهای اپلیکیشن و وب‌سرور
  83. بررسی تنظیمات cache و session در اپلیکیشن
  84. استفاده از DNS امن (DNSSEC) و جلوگیری از DNS Rebinding
  85. محدودسازی اتصال به پایگاه داده از یک subnet خاص
  86. مدیریت و نگهداری کلیدهای رمزنگاری در محیط امن (HSM)
  87. تست نفوذ برنامه‌نویسی‌شده در دوره‌های زمانی مشخص
  88. آموزش امنیت به مدیران سیستم و برنامه‌نویسان در مورد تنظیمات امن
  89. فعال‌سازی Cross-Site Request Forgery (CSRF) Token در فرم‌ها
  90. بررسی تنظیمات زمان‌بندی برای Update خودکار نرم‌افزارها
  91. غیرفعال‌سازی دسترسی فایل‌ها با پسوند sql, inc, bak از مرورگر
  92. حذف داده‌های آزمایشی از پایگاه داده قبل از انتشار
  93. فعال‌سازی ویژگی FORCE_SSL در پایگاه داده‌ها
  94. غیرفعال‌سازی Remote Execution در سرورهای MySQL و MSSQL
  95. ایجاد رویه تست امنیتی قبل از هر انتشار نرم‌افزار
  96. تنظیم محدودیت حجم پاسخ‌دهی در وب‌سرور برای جلوگیری از حملات Buffer Overflow
  97. پیکربندی Secure Cookie برای جلوگیری از سرقت Session
  98. استفاده از Subresource Integrity (SRI) برای بارگذاری فایل‌های خارجی
  99. بستن پورت‌های اضافی در سرور با استفاده از ابزار nmap و firewall
  100. پیکربندی Strict-Transport-Security با مدت زمان مناسب
  101. استفاده از ابزار Tripwire برای بررسی تغییرات فایل‌های حساس
  102. فعال‌سازی System Integrity Protection در سیستم‌عامل‌های پشتیبانی‌شده
  103. جدا کردن سرویس دیتابیس و وب‌سرور در دو سرور مختلف
  104. فعال‌سازی TLS Perfect Forward Secrecy (PFS) در وب‌سرور
  105. استفاده از ابزار NAXSI یا OWASP CRS برای امنیت Nginx
  106. پیکربندی محدودیت در تعداد کوئری‌های دیتابیس در دقیقه برای کاربران عادی
  107. استفاده از ابزارهای مدیریت پچ خودکار برای سرور
  108. محدودسازی دسترسی به دستورات OS از درون دیتابیس
  109. استفاده از مکانیزم‌های Quarantine در دیتابیس برای داده‌های مشکوک
  110. پیکربندی WebDAV در IIS به‌صورت امن یا غیرفعال‌سازی آن
  111. بررسی لیست Diffie-Hellman Key Exchange برای طول کلید امن
  112. تنظیم noexec, nosuid روی mount points مانند /tmp و /var/tmp
  113. بررسی منظم Signature آنتی‌ویروس روی سرور
  114. استفاده از ابزارهای بررسی پورت مانند netstat و ss برای پایش اتصالات مشکوک
  115. محدود کردن امکان مشاهده ساختار دایرکتوری‌ها از طریق خطای 403
  116. پیکربندی ویژگی‌های امنیتی برای فایل‌های رسانه‌ای (مثلاً MIME Sniffing)
  117. پیکربندی SameSite=Strict برای کوکی‌ها
  118. بررسی تنظیمات محدودیت سرعت دانلود فایل برای جلوگیری از حملات DoS
  119. استفاده از Application Gateway جهت جداسازی ترافیک داخلی و خارجی
  120. پیکربندی Redundant DNS Resolver با تنظیمات امن
  121. عدم استفاده از IP Public برای سرور دیتابیس در محیط Production
  122. بررسی هش فایل‌های اجرایی با SHA-256 قبل از اجرای آن‌ها
  123. فعال‌سازی قابلیت System Resource Control در سیستم‌عامل
  124. غیرفعال‌سازی dynamic SQL مگر در موارد ضروری
  125. فعال‌سازی Limit Login Attempts در فرم ورود به سایت
  126. ایجاد محدودیت GeoIP برای دسترسی به سرور
  127. ایجاد رمز عبور اختصاصی برای Backup Encryption
  128. پیکربندی احراز هویت از طریق LDAP به‌صورت امن (LDAPS)
  129. بررسی Rootkit ها با ابزارهایی مثل chkrootkit یا rkhunter
  130. محدودسازی قابلیت ایجاد یا حذف دیتابیس توسط کاربران غیرادمین
  131. تنظیم قفل خودکار حساب بعد از چند بار ورود اشتباه در دیتابیس
  132. بررسی حملات ساید چنل در پایگاه‌های داده ابری
  133. محدودسازی قابلیت ذخیره اسکریپت در فیلدهای دیتابیس (XSS Stored)
  134. پیکربندی مانیتورینگ رفتار کاربران دیتابیس با ابزارهایی مانند Oracle Audit Vault
  135. استفاده از Security Baselineهای CIS برای تنظیمات پیش‌فرض سرور
  136. پیکربندی سرور جهت پاسخ ندادن به پکت‌های malformed
  137. ایزوله‌سازی سرورهای دیتابیس در Subnet مجزا
  138. استفاده از رمزنگاری ستون‌های حساس (Column-level encryption)
  139. محدودسازی Query Timeout برای جلوگیری از حملات طولانی
  140. پیکربندی Log Shipping امن بین دیتابیس‌های Master و Slave
  141. اجرای تست‌های Fuzzing روی ورودی‌های وب‌اپلیکیشن
  142. پیکربندی محتوای `X-Frame-Options` برای جلوگیری از Clickjacking
  143. بررسی فعال بودن DEP و ASLR روی سیستم‌عامل
  144. پیکربندی Policy برای عدم ذخیره‌سازی کوکی در مرورگرهای Third-Party
  145. استفاده از رمزگذاری کلید عمومی برای ارسال اطلاعات login به سرور
  146. پیکربندی جلوگیری از HTTP Parameter Pollution
  147. بررسی وجود فایل‌های مخرب در مسیرهای قابل‌دسترسی وب
  148. پیکربندی حداکثر نرخ مصرف CPU برای SQL Engine
  149. استفاده از مکانیسم‌های Containerization (Docker) با تنظیمات امن
  150. نصب نسخه Hardened از توزیع لینوکس مانند Alpine یا SELinux-enabled CentOS
  151. پیکربندی Alarm در صورت افزایش غیرعادی تعداد Query
  152. بررسی و حذف دستورات Drop/Truncate غیرمجاز در کد اپلیکیشن
  153. تنظیم عدم Allow File Inclusion در پارامترهای URL
  154. استفاده از سرویس‌ اسکن بدافزار در فایل‌های آپلودی
  155. پیکربندی گزارش‌های خطای سفارشی برای جلوگیری از نمایش اطلاعات سیستمی
  156. پیکربندی Token-based Authentication به جای Session-based
  157. بررسی وجود فایل‌های پنهان یا backup روی سرور
  158. پیکربندی Rate Limit در لاگین پنل مدیریت سرور
  159. بررسی تاریخچه دستورات SQL اجراشده توسط کاربران
  160. محدودسازی قابلیت ارسال ایمیل از سرور به دامنه‌های خاص
  161. پیکربندی لاگ‌برداری برای کوئری‌های کند (Slow Queries)
  162. ایجاد گروه‌های کاربری جداگانه در DBMS برای نقش‌های مختلف
  163. تنظیم خط‌مشی حساب کاربری بدون قابلیت رمزعبور خالی
  164. محدودسازی سطح دسترسی از طریق Application Role در SQL
  165. پیکربندی محدودیت بارگیری فایل از طریق HTTP
  166. استفاده از نسخه رمزنگاری‌شده Remote Desktop یا SSH فقط با کلید
  167. بررسی صحت کلیدهای SSH سرور به‌صورت دوره‌ای
  168. پیکربندی امنیتی مربوط به WebSocket در اپلیکیشن‌های بلادرنگ
  169. ایزوله‌سازی Process های سرور با استفاده از chroot یا jail
  170. غیرفعال‌سازی MIME Sniffing در مرورگرها با `X-Content-Type-Options: nosniff`
  171. پیکربندی یکپارچه‌سازی لاگ‌ها با سیستم SIEM
  172. پیکربندی Extended Logging در Nginx یا IIS
  173. استفاده از IP Whitelisting برای محیط‌های مدیریت دیتابیس
  174. ایجاد حساب کاربری مجزا برای هر توسعه‌دهنده یا DBA
  175. بررسی تغییرات مشکوک در حجم فایل‌های لاگ
  176. تنظیم Auto Kill Connection در صورت شناسایی رفتار مشکوک
  177. محدودسازی امکان اجرای Job در SQL Server به نقش sysadmin
  178. پیکربندی Secure Headers در CDN نیز همزمان با وب‌سرور
  179. محدودسازی امکان Mount کردن دیسک‌های خارجی در سرور
  180. ایجاد مجوزهای مبتنی بر Least Privilege در تمام سطوح سیستم
  181. بررسی وجود اسکریپت‌های مخرب در صفحات خطا (404, 500)
  182. ایجاد فرآیند Patch Management برای پایگاه داده و وب‌سرور
  183. استفاده از ابزارهایی مانند CrowdSec برای دفاع مبتنی بر جامعه
  184. بررسی تنظیمات استفاده از تایم‌زون درست برای Logging
  185. استفاده از DLP برای جلوگیری از نشت اطلاعات حساس
  186. نصب کنترل پنل امن مانند CyberPanel یا aaPanel با حداقل سطح دسترسی
  187. ایجاد snapshot قبل از اعمال تغییرات بزرگ روی کانفیگ‌ها
  188. تنظیم هش کردن رمزهای عبور با bcrypt یا Argon2 در اپلیکیشن
  189. پیکربندی محدودیت Max Concurrent Connections به سرور
  190. محدودسازی درخواست‌های هم‌زمان به API از یک IP خاص
  191. استفاده از رمزنگاری فایل‌های لاگ با کلیدهای امن
  192. تنظیم بازه‌های محدود زمانی برای اتصال کاربران به دیتابیس
  193. پیکربندی لاگینگ SQL Injection detection در فایروال برنامه وب (WAF)
  194. غیرفعال‌سازی پشتیبانی از روش‌های احراز هویت ضعیف مانند Basic Auth
  195. تنظیم خط‌مشی Password History در دیتابیس
  196. پیکربندی Content Security Policy با محدودیت منابع دقیق
  197. استفاده از IDS/IPS برای تحلیل رفتار ترافیک دیتابیس
  198. تنظیم Secure Boot در BIOS سرور
  199. غیرفعال‌سازی Clipboard در Remote Desktop
  200. تنظیم گزارش‌گیری از بازنشانی رمز عبور کاربران
  201. بررسی فایل‌های کانفیگ برای اطلاعات hardcoded مانند رمز عبور
  202. پیکربندی fail2ban برای مسدودسازی IP در صورت تلاش ورود ناموفق
  203. پایش دسترسی به منابع با استفاده از SIEM
  204. فعال‌سازی ویژگی SQL Server Extended Protection
  205. استفاده از دستور GRANT محدود به حداقل دسترسی در MySQL
  206. غیرفعال‌سازی تابع xp_cmdshell در SQL Server
  207. پیکربندی مانیتورینگ استفاده از منابع توسط یوزرها در دیتابیس
  208. پیکربندی آنتی‌ویروس با اسکن real-time برای پوشه‌های حساس
  209. پیکربندی Transport Encryption بین دیتابیس و اپلیکیشن
  210. پیکربندی outbound firewall برای سرور جهت جلوگیری از تماس مشکوک
  211. بررسی تنظیمات Service Principal Name در Windows Authentication
  212. ایجاد هش رمز عبور با الگوریتم bcrypt یا Argon2
  213. استفاده از پیام‌های خطای عمومی برای جلوگیری از افشای ساختار داخلی
  214. محدودسازی امکان استفاده از iframe در سایت
  215. پیکربندی alert برای اجرای commandهای خطرناک در bash history
  216. استفاده از نسخه Hardened Kernel در لینوکس سرور
  217. بررسی و حذف فایل‌های .bak و .old از دایرکتوری‌های وب
  218. فعال‌سازی Transaction Audit Trail در DBMS
  219. پیکربندی اجباری بودن استفاده از VPN برای اتصال به سرور
  220. استفاده از Application Whitelisting برای فایل‌های اجرایی
  221. جلوگیری از استفاده از توابع خطرناک مانند `eval()` در کد بک‌اند
  222. تنظیم محدودیت حجم فایل آپلودی برای پیشگیری از حملات DOS
  223. پیکربندی سیستم هشدار هنگام دسترسی غیرمجاز به root
  224. پیکربندی auditd در لینوکس برای پایش فعالیت‌های حساس
  225. بررسی تغییرات فایل‌های کانفیگ با استفاده از ابزارهایی مانند AIDE
  226. بررسی و جلوگیری از استفاده از Encodingهای نامعمول در درخواست‌ها
  227. تنظیم Certificate Pinning در کلاینت‌ها
  228. غیرفعال‌سازی سرویس‌های نامرتبط مانند FTP یا Telnet در سرور
  229. استفاده از ابزار Static Code Analysis برای کشف آسیب‌پذیری‌ها
  230. پیکربندی Secure Session Timeout در اپلیکیشن وب
  231. پیکربندی no-root execution برای دیتابیس و وب‌سرور
  232. استفاده از کلمات عبور Expiring برای کاربران سطح پایین
  233. غیرفعال‌سازی Web Server Signature در Apache/Nginx
  234. بررسی وجود Shell یا بک‌دور در فایل‌های js یا php سایت
  235. استفاده از ابزارهای مثل Lynis برای ارزیابی امنیتی سرور
  236. محدودسازی تعداد Login Session های همزمان یک کاربر
  237. تنظیم محدودیت تعداد نتایج قابل نمایش در کوئری‌های جستجو
  238. بررسی استفاده از توابع insecure hash مانند MD5 و جایگزینی آن‌ها
  239. ایجاد ساختار امن برای دایرکتوری آپلود فایل‌ها با دسترسی محدود
  240. جلوگیری از اجرای فایل‌های .php در دایرکتوری upload
  241. پیکربندی سیستم هشدار برای فعالیت‌های خارج از ساعت کاری
  242. استفاده از یک الگوریتم تعیین نرخ رفتار کاربر برای کشف نفوذ
  243. غیرفعال‌سازی فشرده‌سازی gzip در صفحات حساس برای جلوگیری از BREACH
  244. بررسی خودکار certificate expiration در وب‌سرورها
  245. تنظیم اجرای سیستم در حالت read-only mount هنگام بروز تهدید
  246. پیکربندی هشدار هنگام تلاش برای دسترسی به فایل‌های .env
  247. استفاده از VPN دارای احراز هویت دو عاملی برای مدیریت دیتابیس
  248. پیکربندی scrub کردن داده‌های حساس از لاگ‌ها
  249. استفاده از سیستم هشدار دهنده برای افزایش ناگهانی حجم دیتابیس
  250. تنظیم alert در هنگام تغییر سطح دسترسی کاربران
  251. پیکربندی حذف اتوماتیک فایل‌های موقت و کش شده در وب‌سرور
  252. پایش دسترسی به سرور از طریق اپلیکیشن‌های تلفن همراه
  253. ایجاد Audit Log برای کلیه تراکنش‌های مدیریتی در دیتابیس
  254. استفاده از الگوریتم امضای دیجیتال برای APIهای حساس
  255. تنظیم sandbox برای اجرای کدهای پردازش فایل
  256. استفاده از Container Imageهای Sign‌شده و امن
  257. تنظیم alert در صورت باز شدن پورت غیراستاندارد در فایروال
  258. استفاده از ابزارهای Dynamic Application Security Testing (DAST)
  259. محدودسازی دسترسی به API از طریق Access Token منقضی‌شونده
  260. استفاده از الگوریتم بررسی عدم دستکاری داده‌ها در انتقال
  261. پیکربندی File Integrity Monitoring برای فایل‌های سیستمی
  262. پیکربندی محافظت از فایل‌های لاگ با permissionهای دقیق
  263. ایجاد مکانیزم احراز هویت مبتنی بر hardware key (مانند YubiKey)
  264. غیرفعال‌سازی پردازش جاوااسکریپت برای صفحات ورود
  265. بررسی اعتبار ایمیل‌ها در فرم‌های ثبت‌نام با الگوریتم‌های MX lookup
  266. جلوگیری از اجرای هم‌زمان چند درخواست POST از یک کاربر
  267. پیکربندی CORS دقیق و محدود در backend
  268. پایش تغییرات در certificate chain با استفاده از ابزارهایی مانند Certwatch
  269. بررسی و غیرفعال‌سازی ماژول‌های استفاده‌نشده در وب‌سرور
  270. پیکربندی احراز هویت ترکیبی برای دسترسی به محیط‌های production
  271. تنظیم محدودیت استفاده از منابع (CPU، RAM) برای هر کاربر دیتابیس
  272. ایجاد برنامه Disaster Recovery برای سیستم‌های دیتابیس و وب‌سرور
  273. بررسی تغییرات غیرمجاز در فایل‌های init script سرور
  274. ایجاد ساختار هشدار برای تغییر مسیرهای Routing در backend
  275. تنظیم به‌روزرسانی خودکار Certificateها با ابزارهایی مثل Certbot
  276. تنظیم role-based access در dashboard مدیریت سرور
  277. ایجاد honeypot در سطح اپلیکیشن برای شناسایی ربات‌ها
  278. پایش برخط ترافیک ورودی و تطبیق با baseline نرمال
  279. استفاده از امضای دیجیتال برای تایید صحت فایل‌های config