PVS-Studio como una soluci贸n SAST

PVS-Studio y SAST

Hasta hace poco, en nuestros art铆culos, posicionamos a PVS-Studio como una herramienta para detectar errores en el c贸digo. Al mismo tiempo, casi no consideramos PVS-Studio en el contexto de seguridad. Intentemos solucionar un poco esta situaci贸n y echemos un vistazo a la herramienta en t茅rminos de pruebas de seguridad de aplicaciones y pr谩cticas de DevSecOps.

PVS-Studio es una herramienta para pruebas de seguridad de aplicaciones est谩ticas (Static Application Security Testing, SAST). En otras palabras, el analizador PVS-Studio detecta no solo errores tipogr谩ficos, c贸digo muerto y otros errores, sino tambi茅n vulnerabilidades potenciales.

La herramienta se ejecuta en Windows, Linux, macOS y analiza el c贸digo de los programas en C, C ++ y C #. A finales de 2018, se planea la compatibilidad con el lenguaje Java.

Para la comodidad de los especialistas que utilizar谩n PVS-Studio como herramienta SAST, el analizador muestra sus advertencias sobre la Enumeraci贸n de Debilidad Com煤n , los Est谩ndares de Codificaci贸n SEI CERT , y tambi茅n es compatible con el est谩ndar MISRA (actualmente en implementaci贸n).

Tablas de cumplimiento de diagn贸sticos de PVS-Studio a varios est谩ndares:

  1. Cumplimiento de CWE
  2. Cumplimiento SEI CERT
  3. Soporte de MISRA (planeamos implementarlo antes de finales de 2018)

La clasificaci贸n m谩s com煤n de las alertas de la herramienta SAST es la enumeraci贸n de debilidad com煤n (CWE). Veamos, uso el lenguaje CWE ya que el analizador PVS-Studio ayuda a prevenir vulnerabilidades.

Si recurrimos a la base de datos de vulnerabilidades conocidas de seguridad de la informaci贸n ( CVE ), resulta que a menudo la causa de las vulnerabilidades en los programas no son algunas fallas de seguridad, sino errores de software comunes. El Instituto Nacional de Est谩ndares y Tecnolog铆a (NIST) confirma esto al afirmar que el 64% de las vulnerabilidades de software se deben a errores de c贸digo.

Son tales errores los que podr铆an conducir a vulnerabilidades que se describen en CWE. En consecuencia, si el error puede clasificarse como CWE, existe la posibilidad de que pueda explotarse como una vulnerabilidad y eventualmente llenar la lista de CVE. Para mayor claridad, puede usar la imagen del embudo:

Errores, CWE, CVE

Hay muchos errores Algunos de ellos son peligrosos desde el punto de vista de la seguridad y, por lo tanto, se clasifican seg煤n CWE. Algunos errores de CWE pueden explotarse y son vulnerabilidades.

S铆, en la pr谩ctica, solo una fracci贸n muy peque帽a de los errores de CWE encontrados son peligrosos y son vulnerabilidades. Sin embargo, si est谩 desarrollando aplicaciones cr铆ticas para la seguridad y le preocupa la seguridad del usuario, debe tomar estos errores muy en serio. Al eliminar los errores de CWE, protege su aplicaci贸n de muchas vulnerabilidades.

Ahora la relaci贸n entre errores, PVS-Studio y vulnerabilidades se hace evidente. El analizador PVS-Studio encuentra errores y clasifica muchos de ellos como CWE. Al corregir estos errores, hace que su aplicaci贸n sea m谩s confiable. Encontrar una vulnerabilidad en un producto puede afectar seriamente su reputaci贸n. Al corregir los errores del analizador, reduce significativamente este riesgo en la primera etapa de desarrollo: escribir c贸digo.

El analizador PVS-Studio, como cualquier otra herramienta, no garantiza que no haya vulnerabilidades en el c贸digo. Sin embargo, si PVS-Studio evita, por ejemplo, el 50% de las vulnerabilidades potenciales, esto ya es maravilloso.

Adem谩s, le sugerimos que lea el art铆culo " 驴C贸mo puede PVS-Studio ayudar a encontrar vulnerabilidades? ", Que muestra errores que condujeron a vulnerabilidades, que podr铆an haberse evitado si la herramienta PVS-Studio se hubiera utilizado en el proceso de desarrollo.

Comience a usar PVS-Studio como una soluci贸n SAST: descargue PVS-Studio .

Source: https://habr.com/ru/post/es418143/


All Articles