Secure Coding & OWASP Top 10 for Backend · درس

مسارات التدقيق والسجلات الكاشفة للعبث

تعلّم كيفية بناء مسارات تدقيق موثوقة تسجل الأحداث المهمة أمنيًا وتقاوم العبث باستخدام تسلسل التجزئة والتخزين القابل للإلحاق فقط.

الدرس 4 من 413 خطوة

مسارات التدقيق والسجلات الكاشفة للعبث درس مجاني في Secure Coding & OWASP Top 10 for Backend على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Secure Coding & OWASP Top 10 for Backend، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Secure Coding & OWASP Top 10 for Backend 4 دروس في المجموع.

بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.

Logs vs Audit Trails

Ordinary logs help debugging; an audit trail is a structured, durable record of security-relevant actions: who did what, when, and from where. Audit trails support investigations, compliance, and accountability.

What to Audit

Record events that matter for security and compliance:

  • Authentication: logins, logouts, failures
  • Authorization changes: role and permission edits
  • Sensitive data access and exports
  • Configuration and admin actions

Do not log secrets, passwords, or full card numbers.

Anatomy of an Audit Event

A good audit record is structured and complete enough to reconstruct what happened.

event = {
    'timestamp': '2026-05-31T10:22:00Z',
    'actor': 'user:1042',
    'action': 'role.grant',
    'target': 'user:2099',
    'detail': 'granted admin',
    'ip': '203.0.113.7',
    'result': 'success',
}
print(event)

Why Tamper-Evidence?

Attackers who gain access often try to erase their tracks. A tamper-evident log makes any modification or deletion detectable, so you can trust the trail during an incident.

Append-Only Storage

Audit logs should be append-only. Write them to storage that disallows edits and deletes: WORM buckets, append-only tables, or a separate logging service the application cannot modify after writing.

Hash Chaining

Hash chaining links each record to the previous one by including the prior record's hash. Altering any earlier entry breaks the chain, making tampering obvious.

import hashlib, json

def chain_hash(prev_hash, record):
    payload = prev_hash + json.dumps(record, sort_keys=True)
    return hashlib.sha256(payload.encode()).hexdigest()

h0 = '0' * 64
h1 = chain_hash(h0, {'action': 'login', 'actor': 'u1'})
h2 = chain_hash(h1, {'action': 'export', 'actor': 'u1'})
print(h2)

Verifying the Chain

To verify integrity, recompute the chain from the start and compare against stored hashes. The first mismatch points to the tampered record.

def verify(records):
    prev = '0' * 64
    for r in records:
        expected = chain_hash(prev, r['data'])
        if expected != r['hash']:
            return False
        prev = r['hash']
    return True

Centralized & Off-Host

Ship audit logs off the host that generates them, to a SIEM or central log store. If an attacker compromises a server, the off-host copy remains intact for investigation.

Time Synchronization

Accurate, synchronized clocks (NTP) are essential. Correlating events across systems during an incident depends on consistent timestamps; always store time in UTC with timezone info.

Retention & Protection

Define how long audit data is kept based on compliance needs, and protect it with strict access control. Reading the audit trail should itself be audited.

  • Set a clear retention policy
  • Restrict who can read audit data
  • Audit access to the audit log

Alerting on Anomalies

Pair audit trails with monitoring so suspicious patterns, like repeated permission grants or bulk exports, trigger alerts in near real time rather than being discovered weeks later.

Quick Check

Test your understanding of tamper-evident logging.

Recap

You learned how audit trails differ from debug logs, what to record, and how to make them tamper-evident with append-only storage and hash chaining. Ship logs off-host, synchronize clocks, set retention, and alert on anomalies so your trail is trustworthy when it matters.

البدء مجانًا

تعلم Secure Coding & OWASP Top 10 for Backend مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
12
الدروس
48

الأسئلة الشائعة

هل درس «مسارات التدقيق والسجلات الكاشفة للعبث» مجاني؟

نعم — نص درس «مسارات التدقيق والسجلات الكاشفة للعبث» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Secure Coding & OWASP Top 10 for Backend، انتقل إلى CoddyKit PRO. تتضمن دورة Secure Coding & OWASP Top 10 for Backend 4 دروس في المجموع.

ماذا ستتعلم في «مسارات التدقيق والسجلات الكاشفة للعبث»؟

تعلّم كيفية بناء مسارات تدقيق موثوقة تسجل الأحداث المهمة أمنيًا وتقاوم العبث باستخدام تسلسل التجزئة والتخزين القابل للإلحاق فقط. تتمرن على Secure Coding & OWASP Top 10 for Backend مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Secure Coding & OWASP Top 10 for Backend؟

لا تُشترط خبرة سابقة. Secure Coding & OWASP Top 10 for Backend على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.

كم من الوقت يستغرق درس «مسارات التدقيق والسجلات الكاشفة للعبث»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Secure Coding & OWASP Top 10 for Backend هذا؟

نعم. كل درس في Secure Coding & OWASP Top 10 for Backend يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. التسجيل والتنبيه الآمنان
  2. الحماية الذاتية للتطبيقات أثناء التشغيل (RASP)
  3. التحقق من سلامة البرمجيات والبيانات
  4. مسارات التدقيق والسجلات الكاشفة للعبث
← العودة إلى Secure Coding & OWASP Top 10 for Backend