BETA Shoulder jest w wersji beta — Wyniki mogą czasami być błędne. Twoja opinia kształtuje to, co naprawimy w następnej kolejności. Podziel się opinią
🔒

NULL Pointer Dereference

🛡️ 2 reguł wykrywa to

NULL Pointer Dereference

A NULL pointer dereference occurs when the application dereferences a pointer that it expects to be valid, but is NULL.

NULL pointer dereferences typically cause the application to crash. In some cases, they may be exploitable for denial of service or potentially for code execution.

Rozpowszechnienie
Średnia
Pokryto 2 języków
Wplyw
Średni
Zalecany przegląd
Zapobieganie
Udokumentowane
2 przykładów poprawek
2 Zapobieganie
2 Zapobieganie

Jak naprawić tę podatność

Unsafe Type Assertion Without Ok Check MEDIUM

Use the two-value form of type assertion or type switch to handle failures gracefully

+7 -3 go
- func processData(data interface{}) {
-     m := data.(map[string]interface{})
-     fmt.Println(m["key"])
+ func processData(data interface{}) error {
+     m, ok := data.(map[string]interface{})
+     if !ok {
+         return errors.New("invalid data type")
+     }
+     fmt.Println(m["key"])
+     return nil
  }
  
Non-Null Assertion Without Null Check LOW

Replace non-null assertions (!) with explicit null checks or optional chaining

+4 -2 javascript
  interface Config {
    database?: {
      host: string;
      port: number;
    };
  }
  
  function connect(config: Config) {
-   const host = config.database!.host;
-   const port = config.database!.port;
+   if (!config.database) {
+     throw new Error('Database configuration is required');
+   }
+   const { host, port } = config.database;
    return createConnection(host, port);
  }
  
3 Wykrywanie
3 Wykrywanie

Znajdz podatnosci w swoim kodzie

Uzyj Shoulder do skanowania kodu w poszukiwaniu wzorcow NULL Pointer Dereference. 2 reguly.

terminal
# Scan with Shoulder CLI
npx @shoulderdev/cli trust --cwe=476

# Or scan entire project
npx @shoulderdev/cli trust .
4 Sygnaly Ostrzegawcze
4 Sygnaly Ostrzegawcze

Na co zwracac uwage podczas przegladu kodu

Te wzorce wskazuja na potencjalne podatnosci NULL Pointer Dereference. Szukaj ich podczas przegladow kodu i audytow bezpieczenstwa.

🔵
Non-null assertion (!), used on '...' without explicit null/undefined check. This may cause runtime crashes if the value typescript-non-null-assertion
🔍

Przeskanuj swój kod w poszukiwaniu NULL Pointer Dereference

Shoulder CLI znajduje podatne wzorce w całym Twoim kodzie.