Sobes.tech
Middle

Чӣ гуна метавонед барномаеро аз воридоти эҳтимолан хатарноки тарафи муштарӣ муҳофизат кунед?

sobes.tech AI

Ҷавоб аз AI

Ҳимоя аз воридоти хатарнок:

  1. Тозакунӣ кардани маълумот: Тоза кардани воридоти корбар аз коди эҳтимолан зарарнок (HTML, JavaScript) пеш аз намоиш дар саҳифа.

    // Намунаи тозакунӣ бо DOMPurify
    const cleanHtml = DOMPurify.sanitize(userInput);
    
  2. Экранидани натиҷа: Табдил додани аломатҳои махсус ба баробарҳои бехатар пеш аз намоиш дар саҳифа, то пешгирӣ аз иҷрои коди зарарнок.

    <!-- Намунаи экраниданӣ -->
    <p id="output"></p>
    <script>
      const userInput = "<script>alert('XSS')</script>";
      document.getElementById('output').textContent = userInput; // Истифодаи textContent барои натиҷаи бехатар
    </script>
    
  3. Сиёсати бехатарии мундариҷа (CSP): Танзим кардани HTTP-аголаи Content-Security-Policy барои маҳдуд кардани манбаъҳои мундариҷа, ки метавонанд бор карда шаванд ва иҷро шаванд.

    Content-Security-Policy: default-src 'self'; script-src 'self' https://cdnjs.cloudflare.com; style-src 'self' 'unsafe-inline';
    
  4. Тафтиши маълумот: Санҷиши воридоти корбар барои мувофиқат бо формати интизор, навъи маълумот ва дарозӣ ҳам дар клиент ва ҳам дар сервер.

    // Намунаи тасдиқи муштарӣ
    if (inputField.value.length > 100) {
      // Хатогии тасдиқ
    }
    
  5. Истифодаи API ва китобхонаҳои бехатар: Аввалият додан ба API-ҳои дарунсохт ва китобхонаҳои эътимоднок барои кор бо DOM, коркарди маълумот ва пешгирии истифодаи мустақим аз innerHTML бо маълумоти нопасанд.

  6. Маҳдуд кардани ҳуқуқи корбар: Иҷрои принсипи камтарин ҳуқуқҳо, вақте ки интерфейси корбар иҷозат намедиҳад иҷрои амалҳои эҳтимолан хатарнок бе иҷозати дахлдор.

  7. HTTPS: Ҳамеша истифодаи HTTPS барои рамзгузории маълумот байни клиент ва сервер.

  8. Ҳимоя аз CSRF (Cross-Site Request Forgery): Истифодаи токенҳои CSRF барои санҷиши аутентификатсияии дархостҳо, ки аз ҷониби клиент ирсол мешаванд.

    // Намунаи ирсоли токени CSRF
    fetch('/api/update', {
      method: 'POST',
      headers: {
        'X-CSRF-Token': csrfToken
      },
      body: JSON.stringify(data)
    });
    
  9. Флаг HttpOnly барои кукиҳо: Танзим кардани флаг HttpOnly барои кукиҳои сессия, то дастрасӣ ба онҳо аз JavaScript пешгирӣ шавад.

  10. Навсозии мунтазами вобастагиҳо: нигоҳ доштани китобхонаҳо ва фреймворкҳо дар ҳолати актуалӣ барои бартараф кардани осебпазирии маълумшудаҳо.