¿Por qué los sistemas operativos basados ​​en Linux se consideran más seguros que Windows? [cerrado]

19

Escuché que los sistemas basados ​​en Linux son mejores para la seguridad. Aparentemente no tienen virus y no necesitan software antivirus. Incluso mi universidad afirma esto: se niegan a tener Windows en sus servidores, lo cual es una verdadera lástima porque queríamos usar el marco .NET para crear algunos sitios web.

La única razón por la que puedo ver que Linux es más seguro es porque es de código abierto, por lo que teóricamente los errores se detectarían y solucionarían antes.

Sé un poco sobre cómo funcionan los sistemas operativos, pero realmente no he profundizado en cómo Linux y Windows implementan su sistema operativo. ¿Alguien puede explicar la diferencia que hace que los sistemas basados ​​en Linux sean más seguros?

echoblaze
fuente
55
No estoy respondiendo exactamente tu pregunta, pero quiero defender un poco la elección de tu escuela. Mi escuela opera tanto un sistema Windows como un sistema Linux que (intentan) compartir un sistema de archivos común. Pero en la práctica esto puede ser costoso porque las ventanas y los dominios unix en la red realmente no se llevan bien, lamentablemente. Dado que vemos que los usuarios de Windows necesitan usar algún componente de código abierto más que lo contrario (perdón por .net), entonces es una opción respetable que solo admitan Linux en el hardware básico central como los servidores. Linux admite la mayoría de los servicios cruciales hoy
Notmyfault
gracias por su respuesta, y también a los demás respondedores, definitivamente me ayudaron a aclarar las cosas. Para el registro, estaba más escéptico que enojado por el reclamo de mi universidad.
echoblaze el

Respuestas:

55

No creo que un sistema operativo sea "seguro". Una configuración particular de un sistema operativo tiene un grado particular de resistencia a los ataques.

Probablemente me criticarán por ser un "apologista de Microsoft" aquí, pero este hilo está muy forzado hacia las generalizaciones sobre "Windows" que no son ciertas.

Windows 1.0 - 3.11, 95, 98 y ME están basados ​​en DOS. Este linaje de sistemas operativos no tenía ninguna seguridad en el sentido formal (espacios de direcciones protegidos, separación de modo kernel / usuario, etc.). Afortunadamente, cuando estamos hablando de "Windows" hoy no estamos hablando de estos sistemas operativos.

La familia de sistemas operativos Windows NT (Windows NT 3.5, 3.51, 4.0, 2000, XP, 2003, Vista, 2008 y 7) ha tenido un sistema de seguridad muy razonable "diseñado" desde el lanzamiento inicial en 1992. El sistema operativo fue diseñado con el "Libro Naranja" de TCSEC en mente y, aunque no es perfecto, creo que está razonablemente bien diseñado e implementado.

  • Windows NT fue "multiusuario" desde el principio (aunque la funcionalidad de múltiples usuarios que recibieron una interfaz gráfica de usuario simultáneamente desde el mismo servidor no se produjo hasta Citrix WinFrame en la era de Windows NT 3.51). Hay una separación de modo kernel / usuario, con protección de espacio de direcciones que depende de las funciones de hardware subyacentes de la MMU y la CPU. (Yo diría que es muy "Unix-y", pero en realidad es muy "VMS-y").

  • El modelo de permisos del sistema de archivos en NTFS es bastante "rico" y, aunque tiene algunas verrugas en relación con la "herencia" (o la falta de ella, vea ¿Cómo solucionar el defecto de diseño Mover / Copiar NTFS? ), No ha sido hasta los últimos 10 años más o menos que los sistemas operativos estilo Unix han implementado una funcionalidad similar. (Novell NetWare le ganó a Microsoft en este caso, aunque creo que MULTICS los había derrotado a ambos ...> smile <)

  • El administrador de control de servicios, incluido el sistema de permisos para controlar el acceso a los programas de servicio de inicio / detención / pausa, está muy bien diseñado y tiene un diseño mucho más robusto que las diversas arquitecturas "init.d" script "(más bien como" acuerdos de caballeros " ") en muchas distribuciones de Linux.

  • El administrador de objetos ejecutivos (ver http://en.wikipedia.org/wiki/Object_Manager_(Windows) ), que es más o menos análogo al sistema de archivos / proc y al sistema de archivos / dev combinado, tiene un modelo ACL que es similar al sistema de archivos y mucho, mucho más rico que cualquier modelo de permiso que conozco para / proc o / dev en cualquier distribución de Linux.

  • Si bien podríamos debatir los méritos y desventajas del registro, el modelo de permisos para las claves en el registro es mucho más detallado que el modelo de configuración de permisos en archivos en el directorio / etc. (Me gustan especialmente los comentarios de Rob Short sobre el registro en su entrevista "Behind the Code":http://channel9.msdn.com/shows/Behind+The+Code/Rob-Short-Operating-System-Evolution Rob fue una de las personas principales detrás del registro de Windows inicialmente, y creo que es seguro decir que él no necesariamente feliz con cómo salieron las cosas.)

Linux en sí mismo es solo un núcleo, mientras que Windows es más análogo a una distribución de Linux. Estás comparando manzanas y naranjas para compararlas así. Estoy de acuerdo en que Windows es más difícil de "desmantelar" que algunos sistemas basados ​​en Linux. Algunas distribuciones de Linux, por otro lado, se envían con mucha "basura" activada también. Con el advenimiento de los diversos sabores "incrustados" de Windows, es posible (aunque no para el público en general) construir "distribuciones" de Windows que difieren en su comportamiento de los valores predeterminados de Microsoft (excluyendo varios servicios, cambiando los permisos predeterminados, etc.) .

Las diversas versiones de Windows han tenido su parte de valores predeterminados mal elegidos, errores que permitieron a los usuarios no autorizados obtener privilegios, ataques de denegación de servicio, etc. Los núcleos de Unix (y muchas aplicaciones basadas en Unix que se ejecutan de forma predeterminada como root) han tenido los mismos problemas Microsoft ha hecho un trabajo increíble, desde Windows 2000, para facilitar la compartimentación de aplicaciones, ejecutar programas con los menos privilegios y eliminar funciones innecesarias del sistema operativo.

En resumen, supongo que lo que digo es que la configuración específica de un sistema operativo dado para sus necesidades, con respecto a la seguridad, es más importante que el tipo de sistema operativo que está utilizando. Las distribuciones de Windows y Linux tienen capacidades muy similares con respecto a las características de seguridad. Puede aplicar técnicas de seguridad sólidas (privilegios mínimos, instalación limitada de componentes opcionales, mecanismos de autenticación criptográficamente seguros, etc.) en cualquier sistema operativo. Si realmente lo haces o no, eso es lo que importa.

Evan Anderson
fuente
para alguien como yo, que no tiene ni idea de cómo se construyeron las ventanas y los sistemas Linux, su mensaje fue muy informativo
echoblaze
Convenido. Buenos puntos.
Kyle Hodgson el
1
+1: soy un usuario de Linux en casa y principalmente un profesional de seguridad de Windows en el trabajo. La configuración importa mucho más que el sistema operativo en sí mismo, y definitivamente necesita comparar las distribuciones de Linux con Windows, no solo 'Linux' al estilo del núcleo.
romandas 03 de
3
aplauso lento +1
chickeninabiscuit
Una cosa que realmente ha dañado al mundo de Windows durante mucho tiempo (incluso si ahora es principalmente historia) es que durante mucho tiempo tuvo que ser administrador local para hacer muchas cosas, mientras que en el mundo * nix simplemente ser sudoer en esa máquina. El problema obviamente era que cualquier cosa administrada por un administrador local de la mayoría de las máquinas podía hacer cualquier cosa con la máquina. Hubiera sido una amenaza igual para Linux / Unix si no siempre ha sido una práctica bien conocida, no ser root sino hacer sudo / su cuando sea necesario. Supongo que no fue realmente un problema de Windows, sino uno de software y con UAC se solucionó en su mayoría.
Fredrik el
16

Otra cosa que no se menciona es que la seguridad en Windows es mucho más opaca que en Linux.

Por ejemplo, puedo ver un par de archivos de texto y ver exactamente qué está ejecutando mi servidor web. IIS? No tanto: puede ver los resultados de la configuración a través de la herramienta GUI, pero hay configuraciones ocultas. Luego tiene que usar un conjunto diferente de herramientas para revisar las ACL en los archivos, etc.

Es lo mismo con la mayoría de los programas en el mundo de Windows: es muy difícil comprender rápidamente exactamente qué está afectando el entorno de tiempo de ejecución, entre el registro y las ACL.

Chris
fuente
11

No sé sobre esa comparación de permisos de archivos ... cuando era administrador de UNIX / Linux, NT4 tenía archivos ACL que eran mucho más granulares que los permisos de estilo tradicional '777' de UNIX / Linux. Los permisos no lo son todo, por supuesto, y estoy seguro de que las distribuciones modernas de Linux al menos hacen que las ACL de grano fino estén disponibles, incluso si no se implementan de manera predeterminada. En mi opinión, los conceptos sudo y raíz siempre han existido en UNIX, aunque Windows ha estado agregando estos conceptos de manera constante y probablemente ahora estén a la par.

Mi propia interpretación es que, dado que el código del kernel de Linux, y muchos de sus controladores y utilidades, están abiertos, es probable que se haya revisado mucho más a fondo y se corrija con mucha más frecuencia por errores de codificación que pueden conducir a vulnerabilidades remotas que un hacker puede explotar. La teoría dice, en mi cabeza de todos modos, que dado que Linux no es propiedad de una corporación, puede explorar el objetivo de seguridad más completamente que una corporación. Las empresas deben ganar dinero; mientras que los grupos de código abierto simplemente no tienen esta restricción.

Es mucho más fácil ingresar a un sistema Linux y simplemente apagar todo el sistema de ventanas, demonios RPC, etc., puede obtener un sistema basado en Linux o BSD en uno o dos puertos abiertos con un mínimo de paquetes instalados y aún Tener un sistema muy útil muy fácilmente. Esto probablemente tiene más que ver con la herencia de UNIX como SO de desarrollador; todo fue construido para ser modular, no demasiado interconectado. Esto conduce a un sistema mucho más configurable donde simplemente puede eliminar cosas que no son relevantes. No creo que sea tan fácil fortalecer los servidores de Windows de esta manera.

El grupo OpenBSD ha llevado este concepto al extremo. El objetivo principal número uno del programa es revisar cada línea de código para detectar posibles fallas de seguridad. La prueba está en el pudín, se ha encontrado un número increíblemente bajo de vulnerabilidades para OpenBSD a lo largo de los años debido a esta atención al detalle casi fanática (uso la palabra con respeto).

Las corporaciones, si bien hacen un software maravilloso (MSSQL, Exchange, Windows Server 2003 son maravillosas en mi libro), solo tienen objetivos diferentes.

Kyle Hodgson
fuente
55
Si; Las ACL de Windows son más específicas que Linux / Unix sin ACL (aunque la mayoría de las versiones modernas tienen opciones para usar ACL). La diferencia significativa es que las personas tienden a iniciar sesión en Windows como administrador, que sigue siendo la configuración estándar en las computadoras portátiles XP proporcionadas por la compañía, mientras que las personas en Linux / Unix no realizan la mayoría de las operaciones como root. Esto limita el daño que se puede hacer en Linux / Unix en comparación con Windows, de forma predeterminada. Si alguien corre como root todo el tiempo, todas las apuestas están canceladas (excepto que tendrán un lamentable y lamentable accidente, tarde o temprano).
Jonathan Leffler el
"Es muy cierto que los conceptos de sudo y raíz siempre han existido en UNIX y solo ahora están llegando a Windows". ¿De qué estás hablando? Windows NT no es tan antiguo como Unix, pero Windows NT ha tenido una seguridad "diseñada" muy razonable desde su lanzamiento en 1992. Es lamentable que muchos administradores de Windows no implementen usuarios con cuentas de "usuarios limitados" (como deberían haber sido, desde el principio), pero eso no debería maldecir el sistema operativo.
Evan Anderson el
Desde la perspectiva del servidor, concedido. Pero un usuario típico de Windows necesitaba acceso administrativo para tener un entorno incluso razonablemente cómodo hasta Vista. Veo el "clic derecho, ejecutar como administrador" de Vista como comparable a sudo.
Kyle Hodgson el
3
Estoy totalmente en desacuerdo. Despojé miles de escritorios desde Windows NT 4.0 con cuentas de usuario limitadas. "RunAs", que es algo análogo a "sudo", ha estado en el sistema operativo desde Windows 2000 (el "clic derecho, funcionalidad Ejecutar como"). Diré que el control de la cuenta de usuario es una función estúpida y no debería haberse incluido en el sistema operativo. Microsoft hizo lo incorrecto al hacer que sea "más seguro" ejecutarse como "Administrador" en lugar de hacerlo más difícil y doloroso, al tiempo que alentaba a los desarrolladores a trabajar en la escritura de software que no apesta (es decir, requieren derechos de "Administrador").
Evan Anderson el
2
Los usuarios de Vista en los sitios de mis Clientes nunca ven UAC porque se ejecutan como cuentas de usuario limitadas. Solo verá UAC si se está ejecutando como "Administrador". Puede deshabilitar UAC con la política de grupo, pero nunca debería necesitarlo.
Evan Anderson el
9

En mi opinión, si se configuran suficientemente bien, los sistemas basados ​​en Linux son más seguros que los sistemas Windows. Algunas de las razones son:

  1. Transparencia y abundantes herramientas de red simples: por ejemplo, es muy fácil para el administrador de Linux ver la configuración actual del firewall escribiendo "iptables -L -n" en el shell. También puede ver qué puertos están abiertos en la máquina ejecutando "nmap" desde otra máquina Linux. Esto hace que la vida sea mucho más fácil, ya que puede especificar con precisión qué puertos tienen acceso y desde qué direcciones, etc.

  2. Archivos de registro de texto en una ubicación: los archivos de registro basados ​​en texto en una ubicación "/ var / log" son fáciles de respaldar y analizar. Además, las herramientas como logwatch, que pueden monitorear estos archivos de registro y enviarle correos electrónicos con líneas importantes, hacen las cosas muy fáciles. Incluso podemos escribir nuestras propias herramientas para analizar los archivos de registro y encontrar la información que nos interesa. Los registros incluso se pueden exportar a un servidor remoto de syslog en caso de que no queramos registros en el mismo servidor.

  3. No se preocupe por los virus: si los virus son menos en Linux porque hay menos sistemas basados ​​en Linux O porque todos los usuarios aman Linux o porque Linux es más seguro. El motivo no importa. Si al final Linux tiene menos amenaza de virus, entonces es algo bueno de Linux. Personalmente, he visto a personas instalar dos antivirus, anti-spyware y anti-adware en la misma máquina. Todas estas herramientas de protección consumen mucha CPU y memoria.

  4. Soporte para muchos lenguajes de programación: es muy fácil codificar en Linux. C, C ++, Python, Perl, Java, etc. simplemente funcionan sin necesidad de instalar ningún paquete adicional. (Esto en caso de que instale una gran distribución como Fedora que viene en DVD). Se agrega a la seguridad ya que podemos realizar tareas repetitivas mediante la codificación. Entonces, si comete un error y hay un problema, sería con todas las cuentas y sería fácil de detectar y solucionar. Si tuviéramos que hacer los mismos cambios en una gran cantidad de cuentas / directorios a mano, podríamos cometer errores en uno o dos y podría llevar mucho tiempo encontrarlos. También podemos corregir los errores y buscar errores simples usando el código. Dado que todos los archivos de configuración, archivos de información del usuario, archivos de registro, etc. están en texto, es muy fácil codificar lo que queramos lograr y hay muchas maneras de hacer lo mismo.

  5. Código fuente abierto: dado que probablemente muchas personas han visto el código, es muy raro que algún spyware / adware sea parte de las aplicaciones que vienen con Linux. También puede ver el código fuente si la seguridad es muy importante para algún servicio y ver cómo funciona. Si sabe exactamente cómo funciona, entonces conoce las limitaciones y cuándo se romperá. De hecho, si existen limitaciones de seguridad bien conocidas que se habrían documentado en las páginas man, el sitio web del paquete y en los comentarios en los archivos de configuración. Los desarrolladores no tienen nada que perder al decir que si usa nuestra herramienta en tal escenario, entonces es arriesgado. Es posible que no sea lucrativo para las organizaciones que venden software decir limitaciones para el software y haría que su software se viera mal y podría reducir la venta / ganancia.

  6. Gratis e interoperabilidad: aunque esto no está relacionado con la seguridad. Para la universidad donde los costos son importantes, los sistemas basados ​​en Linux son mucho más económicos que los sistemas basados ​​en Windows y no hay necesidad de comprar licencias para el sistema operativo, así como para el software adicional que instalaríamos después de instalar el sistema operativo. En lo que respecta a la interoperabilidad, podemos conectarnos desde máquinas Linux a otros sistemas operativos y compartir archivos fácilmente. En Linux podemos montar muchos sistemas de archivos, incluidos FAT, NTFS, HFSPLUS. Podemos compartir cosas usando ftp, http, ssh, samba, nfs, etc. y todas estas cosas vienen instaladas o pueden instalarse con un solo comando. Otros sistemas operativos generalmente ofrecen solo una opción para compartir cosas.

Pero si no se configuran correctamente los sistemas basados ​​en Linux pueden causar más problemas, entonces uno puede imaginar. Muchos usuarios pueden iniciar sesión en la máquina al mismo tiempo y hacer casi todo desde Shell. Es muy fácil dejar puertas traseras, troyanos en caso de que el firewall no esté configurado correctamente. El atacante puede eliminar el archivo de registro o manipularlo para ocultar sus huellas. El atacante puede codificar en la máquina atacada ya que todos los editores, compiladores y depuradores están disponibles una vez que el atacante tiene acceso a la shell. Todos los servidores ftp, http, se pueden ejecutar desde la cuenta de usuario, pero no en puertos seguros (1-1024). Por lo tanto, el atacante puede descargar el código del servidor http, compilarlo y ejecutar el servidor http en el puerto 6000 para que parezca X Server.

Por lo tanto, los sistemas Linux son más seguros siempre que el administrador sepa lo que está haciendo o, al menos, se moleste en buscar información en páginas de manual y documentación antes de hacer algún cambio nuevo.

Saurabh Barjatiya
fuente
6

La seguridad del servidor es más que solo el sistema operativo. Yo diría que un factor más importante en la seguridad del servidor es la persona que ejecuta el servidor y cuán cuidadosos han sido al bloquear las cosas.

Dicho esto, si la universidad es una tienda de Linux, no le permitirán usar un servidor de Windows independientemente de los datos que encuentre en la seguridad del servidor de Windows. Investigaría usando Mono (www.mono-project.com) si desea usar el marco .Net.

Adam Brand
fuente
6

Transparencia

  • Ejecute ps auxfy sabrá qué servicios se están ejecutando, en qué cuenta.
  • Ejecute netstat -lnpy sabrá qué programas tienen qué puertos TCP abiertos.
  • Ejecuta iptables -Ly sabes qué reglas tiene tu firewall.
  • Ejecutar straceo lsofinspeccionar la actividad del proceso.
  • Ejecute ls -laho tree -pugy sepa exactamente qué propiedad y permisos tiene una carpeta completa.
  • Los registros están dentro /var/logy se pueden inspeccionar con una simple "búsqueda a través de archivos".
  • Sin configuraciones ocultas. Todo es legible por humanos /etc. Buscar archivos de texto, archivarlos o aplicar control de versiones (subversion / git) es realmente fácil.

Sistema de permisos claro

  • En la base, solo hay permisos de archivo. No hay "permisos en claves regex", permisos de ACL heredados, contextos de seguridad por proceso u otras características ocultas.
  • Los bits de permiso son simples:
    • Escribir en archivos = editar contenido del archivo
    • Escribir en carpetas = crear / renombrar / eliminar nodos de archivo.
    • Adhesivo = editar solo archivos propios.
    • Los archivos con permisos de ejecución o setuid están resaltados (en lsmodo de color).
  • Un simple "buscar todos los archivos" revela qué permisos tiene un usuario.
  • Además, las ACL solo se pueden usar donde sea necesario.
  • Las cuentas de usuario tienen solo dos lugares para escribir archivos de forma predeterminada: su $HOMEy /tmp.

Opciones de seguridad avanzadas

  • SELinux / AppArmor puede restringir los procesos para acceder solo a un conjunto específico de archivos (además de los permisos de archivo)
  • Una cárcel de Chroot permite a los administradores ejecutar programas completamente aislados del resto. Como si estuviera instalado en un disco duro vacío, con solo los archivos que realmente necesita.
  • Con ellos sudo, los usuarios y los procesos pueden tener permisos para ejecutar solo unos pocos comandos administrativos.

Puntos únicos para entrada y elevación privilegiada

  • Un proceso no puede obtener más privilegios por sí mismo. La única forma es ejecutar otro programa "SetUID Root", como sudocontactar un servicio DBus que verifica primero PolicyKit. Esos programas SetUID se pueden encontrar con un solo comando "Buscar en todos los archivos".
  • El IPC entre procesos es bastante restringido, lo que reduce los vectores de ataque.
  • El acceso al sistema (consola de texto, escritorio remoto, RPC, eliminación de invocación de comandos, etc.) se realiza a través de todo ssh. Es un túnel SSL con verificación de clave pública / privada.

Procesos en segundo plano seguros

  • Los servicios en segundo plano se ejecutan con privilegios más bajos lo antes posible. Servicios como Apache, Dovecot y Postfix entregan la conexión entrante a un proceso de pocos privilegios lo antes posible.
  • Bloqueado por defecto. Microsoft también ha adoptado este enfoque en Windows Server 2008 ahora.

Buenas herramientas de auditoria

  • Las herramientas como nmap, ncatauditoría de seguridad hacen fácil.
  • Los servicios en segundo plano se pueden auditar desde la línea de comandos.
  • Las herramientas de auditoría de registros son comunes.
  • Codificar un servicio seguro es más fácil porque se puede hacer de forma modular.
  • Hay muchas herramientas gratuitas de detección de intrusiones disponibles.
  • Las herramientas de línea de comandos están diseñadas para ser programables, por lo que los administradores pueden automatizar las tareas.

Buenas actualizaciones de seguridad.

  • Cada parte del sistema operativo recibe actualizaciones de seguridad. Cuando se instalan Apache, Python o PHP a través del administrador de paquetes, también recibirán actualizaciones.
  • Hay mucha apertura en lo que corrige una actualización de seguridad, por lo que puede descubrir cómo eso lo afecta.
  • Todos los paquetes de software comparten las mismas bibliotecas. No envían copias separadas, dejando versiones explotables.
  • No Patch Tuesday, esperando una solución cuando los hackers ya están explotando el error en la naturaleza.
  • Es fácil para los desarrolladores probar actualizaciones de seguridad e implementarlas.
  • No es necesario programar el reinicio para realizar una actualización. Los archivos se pueden reemplazar mientras los procesos existentes siguen accediendo a los datos antiguos en el disco. Luego puede averiguar qué servicios necesitan reiniciar ( lsof | grep =).
  • ¡Todo el sistema operativo se puede actualizar sin reinstalar!

Todo lo mencionado aquí se entrega o todas las distribuciones principales de Linux, es decir, Red Hat, Debian, openSUSE o Ubuntu.

vdboor
fuente
5

Linux fue diseñado para ser un sistema multiusuario desde el principio, por lo que tiene un sistema de permisos mucho más fuerte que Windows. También se diseñó para que no se ejecute con derechos administrativos (acceso raíz), por lo que todos los programas están diseñados para no necesitar los derechos. Esto significa que si su cuenta se ve comprometida, todo el sistema no lo está.

Parte de esto probablemente también proviene del hecho de que las personas que ejecutan Linux son (en términos generales), más técnicos y, por lo tanto, menos propensos a cometer los estúpidos errores que provocan que las computadoras sean pirateadas.

Dentrasi
fuente
2
Algunas diferencias entre los sistemas operativos multiusuario y usuario único: jdurrett.ba.ttu.edu/courseware/opsys/os01a.htm
moshen
77
OK, he estado usando Linux por más de 12 años y sistemas operativos tipo UNIX por más tiempo. Por mucho que me guste Linux, no puedes decir que tiene un sistema de permisos más fuerte que Windows. Tiene un mejor modelo de seguridad que las primeras versiones de Windows (es decir, no siempre es administrador), pero WinNT y más tarde tiene un sistema de permisos sólido que simplemente no se utilizó con buenos resultados. Las versiones recientes de Linux tienen selinux, que es aún más fuerte, pero esta es una adición relativamente reciente (aunque muy poderosa).
Eddie el
5

'La seguridad se trata de control'

Desde mi punto de vista, en Windows tienes menos control que en Linux. Endurecer Windows es ... más difícil :). Aunque cualquier herramienta depende de las habilidades del portador, consideraría lo siguiente:

  • Windows tiene más vulnerabilidades de alto riesgo y más explotación automática (virus, botnets)
  • Los administradores de Windows son (o deberían ser) paranoicos (por miedo a la intrusión) y han hecho algún tipo de endurecimiento
  • Los administradores de sistemas Linux a veces confían demasiado en la seguridad del sistema operativo y se olvidan del endurecimiento
  • Una vez pirateado, en un sistema Linux puede hacer más que en un sistema Windows, ya que hay herramientas de comando más potentes.

Entonces, aunque prefiero Linux sobre Windows, creo que no debe confiar en las instalaciones predeterminadas.

chmeee
fuente
3

La mayoría de las publicaciones anteriores se han centrado en la intrusión, y se ha hecho un buen trabajo cubriendo ese punto, uno de los puntos de su pregunta fue sobre los virus. Las principales razones por las que las distribuciones de Linux tienen menos problemas con los virus son que hay más cuadros de Windows que Linux y Mac juntos. Los creadores de virus quieren obtener el mayor rendimiento por su dinero, por lo tanto, escriben para Windows.

Todos los sistemas son capaces de intrusiones e infectarse. Cualquiera que le diga algo diferente, ya sean sus instructores u otros, sean tontos o tengan propiedades frente al mar en Utah para venderlo.

WolfmanDragon
fuente
3

A juzgar por las correcciones de seguridad en TODO el software en estos días, creo que el problema no es el software sino la cantidad de escritorios que ejecutan Windows. Este es el objetivo, crear botnets. Si Linux realmente crece en el espacio del escritorio, también será atacado más. Creo que Mac OSX ya está viendo esto.

James Risto
fuente
2

Hay una razón muy importante por la que Linux y OpenBSD tienen el potencial de ser más seguros que Windows. Esa es la capacidad del sistema operativo para cortafuegos de ataques de red.

En Windows, los paquetes de red entrantes han estado expuestos a partes importantes del sistema operativo mucho antes de que un firewall de Windows pueda rechazar el paquete. En Linux, con IPTables o con OpenBSD con PF, puede aislar paquetes falsos mucho antes en el proceso del sistema operativo que recibe un nuevo paquete de red, lo que reduce la exposición.

Sin embargo, una vez que abra un puerto y ejecute un servicio en él, es decir, haga que una computadora en red sea útil, estará tan seguro como el código que ejecuta ese servicio.

Michael Shaw
fuente
2

No existe un sistema operativo que sea más seguro que otro. Todo depende del conocimiento de las personas que administran el sistema.

Me he reunido y trabajado con algunos administradores * nix extremadamente talentosos a lo largo de los años y pudieron configurar un servidor * nix extremadamente seguro. Sin embargo, péguelos frente a un host de Windows y no tendrían idea de cómo bloquear la máquina. Lo mismo ocurre a la inversa, sé una cantidad decente sobre la seguridad de un host de Windows, pero me puse frente a un cuadro * nix y no tendría idea de lo que estaba haciendo.

Ningún sistema operativo es más o menos seguro que el otro. Claro que podríamos hablar sobre la historia de las plataformas y usar eso para debatir cuál ha sido más seguro con el tiempo, pero no estamos hablando de los sistemas operativos * nix de hace 10 años y de implementar Windows NT 4 en entornos de producción. . Estamos hablando de sistemas operativos modernos (o al menos deberíamos estarlo) y cuáles pueden estar mejor protegidos.

Vi a alguien decir algo en una respuesta sobre los paquetes que llegan al firewall de Windows que tocan más partes del sistema operativo que el firewall de Linux. Por pregunta para él, ¿quién demonios confía en un firewall de software que se ejecuta en el host? Para eso están los firewalls de punto final / front end. Para proteger la red. El host que ejecuta un servicio tiene un servicio expuesto. El trabajo de los anfitriones es garantizar que ese servicio no se vea comprometido. Es el trabajo de los dispositivos de red frente a él para evitar que otros paquetes lleguen de Internet a los otros servicios del host.

Una vez que la red está debidamente protegida, todo depende de qué tan segura esté la aplicación que se ejecuta en el host. ¿Esa aplicación tiene desbordamientos de búferes que pueden ser explotados? ¿Hay alguna forma dentro de la aplicación expuesta para llegar al sistema operativo y de alguna manera obtener un mayor nivel de permisos? Si no, es una aplicación bien asegurada. Si los hay, entonces tiene un problema que necesita ser expuesto.

Si alguien no considera otro sistema operativo en su centro de datos, eso es una señal de ignorancia (va para una tienda de todo Linux, así como una tienda de todo Windows). Ambos sistemas operativos tienen usos y deben usarse como tales. Ninguno de los dos es mejor o peor que el otro. (Y sí, tenemos un par de máquinas Linux en nuestro entorno que manejan servicios de producción).

mrdenny
fuente
1
Diferiría en la opinión de que todo depende del conocimiento de los administradores. Si se le pide que defienda un fuerte del ataque frente a una tienda de campaña, creo que tiene una pequeña ventaja con un fuerte. Si los dos que se comparan aquí son Linux y Windows, entonces fueron diseñados con dos filosofías diferentes para manejar múltiples usuarios y acceso simultáneo al sistema. Si bien los buenos administradores pueden ayudar a corregir las deficiencias, todavía hay ventajas de uno sobre el otro como punto de partida.
Bart Silverstrim
1

No hay necesidad de maldecir a su universidad por el uso de servidores Linux, para sus requisitos específicos, como dijo AdamB, use Mono (www.mono-project.com). Por lo general, los profesores con interés en el sistema operativo prefieren Linux, incluso cualquier entusiasta del sistema operativo preferiría Linux, por simples curiosidades sobre cómo funcionan las cosas en la práctica de los libros.

  • Ahora con respecto a la seguridad,

Linux ahora sigue DAC (control de acceso discrecional) es un sistema más inteligente para el control de acceso. Como se mencionó en otras respuestas, sí, Linux era multiusuario y, por lo tanto, el sistema de control de acceso mejoró que otros.

Pero la seguridad a la que se refiere se parece a la seguridad del servidor, que no es tanto un problema del sistema operativo como la totalidad de los problemas de la red del servidor. donde me refiero a las listas de control de acceso de cortafuegos, enrutador, etc. Las actualizaciones son gratuitas, de por vida. está abierto, así que ha probado mucho, lo cual es muy importante.

Además de la seguridad, la viabilidad económica hace de Linux la mejor opción para los servidores, donde hay muy pocos, pero se supone que las aplicaciones ejecutan o alojan servicios. Y estas aplicaciones están muy bien portadas para ellos. Por ejemplo, Apache.

Creo que no fue solo la seguridad, sino otros factores que hacen que la mayoría del resto de la universidad opte por Linux en los servidores.

Vivek Sharma
fuente
1

Si bien hay muchas respuestas excelentes aquí, solo quiero agregar que no existe un sistema operativo seguro.

Se sabe que si un humano creó una plataforma 'segura', entonces otro humano puede encontrar agujeros en esa plataforma con el tiempo.

Estoy de acuerdo en que las dos primeras oraciones de Evan resumen mejor la seguridad del sistema operativo:

No creo que un sistema operativo sea "seguro". Una configuración particular de un sistema operativo tiene un grado particular de resistencia a los ataques.

Por lo tanto, no importa si comparamos GNU / Linux, los sistemas BSD (Free / Open / Net), Microsoft, Windows, Mac OSX, Symbian, PalmOS, Cisco IOS, AIX, QNX, Solaris, z / OS o cualquiera de los otros "sistemas operativos" que ejecutan cosas como su televisor, reproductor de MP3, horno de microondas, etc., etc.

Cada uno de estos tiene una parte del todo que tiene la capacidad de ser explotada por un determinado individuo.

Por esta razón, la mayoría de los vendedores tienen documentos técnicos sobre cómo configurar sus sistemas para que tengan una configuración lo más segura posible. Esto significa utilizar otras tecnologías para minimizar el área de superficie.

p.ej:

  • NAT
  • proxy inverso
  • cortafuegos
Wayne
fuente
1
Todavía pondría mi dinero en openbsd cualquier día por "menos probabilidades de ser remotamente vulnerable".
Kyle Hodgson el
¡Tampoco pondré mi dinero contra el tuyo! A menos que hablemos de DOS <= 4 (¿creo que no hay controladores NDIS anteriores a 5.5?)
Wayne
1

El hecho de la seguridad del sistema operativo con respecto a los frameworks es un poco más que un simple problema de tipo kernel. Individualmente, cada uno de los marcos tiene sus mecanismos de seguridad compatibles. La especificación de cuenta multiusuario dentro de Microsoft Windows permite un poco más de flexibilidad en términos de implementación masiva, sin embargo, con Linux tiene la capacidad de controlar desde el principio: los entresijos de los permisos y la delegación.

El nivel de seguridad de .NET Framework tiene que ver principalmente con la política de su grupo, la configuración de consola de powershell y neth. La razón es la telemetría del núcleo en parámetros de acceso de bajo nivel con solicitudes de acceso dinámico en la memoria. Los marcos de Linux a menudo requieren un nivel de atención similar, pero principalmente tiene que ver con los indicadores que especifica cuando configura el idioma. Linux, cuando está configurado correctamente, es más seguro que la seguridad configurada de Microsoft Windows. Aunque en un nivel de configuración "decente"; Las herramientas pueden deslizarse directamente a través de su IIS y pasar directamente a sus servicios mediante el uso de un GUID específico. Linux general permite más control de aspecto que

Puntos principales:

inodes and NTFS index primers and permissions in Windows (including registry) 
    are easier to sift through than an EXT hardnened Linux 

protocol traversal within Linux for exception handling are easier to find 
    than a solid configured Windows Firewall. 

cache indexes within ASP.NET are easier to violate than cache management    
    technologies which are well handled within GNU and C++ libraries
    they are practically built for parallel systems now. 

SQL parse queries, have been proven over and over again; MySQL is faster. 
    than MSSQL, though Oracle has been pushing the belt. Transactional 
    security is proven to be more secure on Windows, but for performance 
    and sheer flexibility shows that MySQL should be used or something 
    along the lines of a iSQL or NSQL (not SQLAB like Berkeley SQL which 
    MSSQL is based on) 

Gateway permissions, Linux has an amazing ability to fondle packets and tiny 
    little things that Windows can only put into sorting bins. This being 
    said, if you are running a Windows network, you have more network auditing 
    than a Linux network because the packages are easier to apply walls to 
    than DLL files and protocol requests. 

Surface layer GUI, .NET Framework offers strict field definitions; while Linux 
    allows intense PCRE and other Regular Expressions. 

Estatuas del gobierno:

OWASP proves over and over again that it is harder to crack a hardened Linux Server 
than it is to crack a hardened Windows Server. Why? Because the firewall and Group 
Policy does not allow as far a tuned key for aspects of the closed source framework 
within ASP.NET; Linux will let you choose a color for every letter on your command. 

NIST Shows over time that SQL management permissions are harder to parse with Windows 
while Linux PCRE makes it harder to bypass SQL queries whether it be within a GUI or 
a Web Interface. 

Carnagie Mellon shows that ASP.NET can hold higher regulations because it is built 
in a more module based context which employs the use of MVC frameworks and can potentially 
have a higher restriction. Meanwhile PHP and Java show that they are incredibly robust 
with their Obfuscation and encapsulation methodologies.

Opiniones personales:

Cada sistema operativo tiene el potencial de ser más seguro que el resto fuera de la caja. Tomando la comparación cruda de los marcos que operan con una mayor seguridad con Linux o Windows, tendría que decir que la parte principal de la seguridad web es usar el marco más incompatible pero eficiente. De esta manera, se vuelve mucho más difícil engancharse a los permisos de acceso del disco duro nativo y los identificadores de la biblioteca. De esta manera, tiene un tazón soldado en la parte superior de su sistema operativo. Como Evan había dicho con los permisos NTFS y / proc o / dev. Si usa algo que no puede hablar con él; Es más difícil de romper.

Lo que aprendí del desarrollo web es que nunca subestimes tu marco. .NET tiene permisos para crear volúmenes montados compartidos y mecanismos de control para clústeres de SQL Server; mientras que Apache Source puede hacer lo mismo con los sistemas operativos que usan Linux. Es una pregunta bastante decente, aunque debería decir que Linux permite más seguridad en el control de aspectos individuales y las restricciones y la supervisión en varios idiomas; mientras que Windows tiene el amplio poder de auditar y registrar con una interfaz de depuración lógica de alto nivel. Ambos son comparables, eventualmente se reduce a "qué tan bien, ¿lo encierras?" Y "¿cuántas campanas y silbatos hay?" en el marco. Apache tiene más mejoras de seguridad adicionales;

En el momento actual que compara PHP en Linux o Windows, es bastante obvio que hay más extensiones que puede usar dentro de un sistema operativo Linux; Windows tiene un nivel de administración de permisos diferente sobre PHP, lo que dificulta la administración de directorios y el acceso a archivos. Dentro de Apache, por ejemplo, XAMPP, LAMPP o WAMP, creo que Windows es un poco menos seguro teniendo en cuenta el hecho de que sus restricciones en el firewall son más fáciles de violar porque comparte las mismas reglas de túnel que su navegador web. Linux, por otro lado, puede usar grupos de aplicaciones y otros mecanismos de seguridad de nivel de paquete que son mucho más complicados de emular. Windows requeriría que use todos los aspectos del sistema operativo para hacer que la red sea más segura.

IIS (en un servidor Microsoft, no Windows Client) en Windows con ASP.NET con las últimas mezclas SEC_ATL también puede ser muy seguro.

Solo Apache solo, es posible que desee ejecutarlo con Linux para habilitar el controlador de nivel superior e inferior, SMIME, códec y valores de nivel de paquete. Si bien Windows requeriría que instale mecanismos de seguridad superpuestos que de otro modo obstruirían su tráfico un poco más de lo que le gustaría si se trata de ejecutar miles de servidores.

Con Linux, cuanto más delgado sea el núcleo y más óptimo para la seguridad de la red, mejor (como fusionarse en Apache con NSLUG).

Con Windows, es mejor que programe módulos Powershell y seguridad de superposición adicional para su marco ASP.NET y configure su política de grupo a USGS porque la mayoría de las veces realmente lo necesita para cerrar el tipo de tráfico que Linux negará automáticamente y no pensará acerca de.

Igualmente pueden ser fuertes. Fuera de la caja, una distribución en vivo de Linux será más fuerte que un Microsoft Windows Server sin configurar que acaba de configurar con el asistente.

Con el tiempo, Linux superará a Windows en el juego de seguridad. Los servidores Debian 3 son aún más fuertes hoy que Microsoft Server 2008 R2 de fábrica y adivinan qué pueden soportar las mismas tecnologías sin una reconstrucción del núcleo. Debian todavía puede fumarlo, y lo he visto con mis propios ojos.

Aunque como se ha dicho antes, estoy seguro. Se trata del personal con el que trabajas y tu atención a los detalles. Eso siempre hace la mayor diferencia cuando se trata de trabajar en una red de servidores grande.

VLi
fuente
0

Predominantemente, creo que Linux se considera una opción más segura debido a su uso ubicuo del software de código abierto.

La tranquilidad surge de la idea de que "la comunidad" se dará cuenta de que si se agrega algo sospechoso en algún lugar (por ejemplo, si openSSH de repente comenzó a llamar a casa con contraseñas), no se quedaría por mucho tiempo.

Pero no puedo reiterar lo suficiente lo que otros han dicho anteriormente: la seguridad depende en gran medida de la configuración: a quién le importa si openSSH no llama a casa si no tiene un firewall, una contraseña raíz nula y PermitRootLogin habilitado en sshd;)

msanford
fuente
0

Respuesta corta: inicialmente, UNIX fue diseñado para ser seguro; Windows fue diseñado para ser simple. Ahora, los descendientes de UNIX pretenderán ser más simples para sus usuarios; Windows pretende ser más seguro.

Aún no se han conocido

dmityugov
fuente
2
¡Bah! Windows NT tenía más previsión para la seguridad en su diseño inicial que Unix. Unix tenía la seguridad puesta más tarde como una ocurrencia tardía. Los sistemas operativos modernos similares a Unix (como Linux, que no es realmente un sistema operativo "Unix" ya que es una base de código completamente nueva) han mejorado mucho desde el Unix original, pero Windows NT fue diseñado, desde el principio, para cumplir con los requisitos de seguridad del "Libro Naranja" del Departamento de Defensa de los Estados Unidos.
Evan Anderson el
0

Las versiones anteriores de Windows tenían aplicaciones que se ejecutaban en el mismo espacio de direcciones, por lo que podían caminar punteros entre ellos. También confiaron en la multitarea cooperativa y, a veces, no cooperaron.

Incluso las primeras versiones de Linux / Unix tenían particiones entre aplicaciones y entre O / S y la capa de aplicación. El corte de tareas, aunque no siempre es ideal, fue al menos justo.

Por lo tanto, el legado de Unix (o Linux) para sistemas más robustos que necesitan una mayor disponibilidad.

¿Todavía se aplica todo esto hoy? Esa es otra pregunta.

kmarsh
fuente
Por supuesto que no. Gran parte de la prensa negativa que Windows recibe de la comunidad de Linux en realidad está directamente dirigida a esas versiones anteriores, y no tiene en cuenta el hecho de que las cosas han avanzado. La última versión de Windows que usó coop m / t fue 3.1, y la última versión de Windows que tenía DOS latiendo en su corazón fue ME.
Maximus Minimus
0

Ahora que NT ha alcanzado a Unix en muchos de los lugares previamente deficientes, los permisos de archivos y la protección de la memoria ya no son grandes problemas de diferenciación.

Pero ... a. En los sistemas Unix, todo el acceso a todos los dispositivos pasa a través de archivos, por lo que la seguridad se puede administrar fácilmente. Por ejemplo, ¿sabe cómo evitar que el usuario X acceda a la tarjeta de sonido en Windows sin dejar de permitir al usuario Y? En Unix, ese tipo de cosas es fácil.

si. La estructura del directorio es mucho más sensata. (Por ejemplo, una aplicación de usuario solo necesita tener acceso de escritura a su carpeta de inicio, etc.) Sin embargo, esto también ha mejorado en Windows en los últimos años.

re. Esto es un problema: SELinux (y la función de sandbox "Seatbelt" de Trusted Solaris y Mac OS). Esto se conoce como NDAC (Control de acceso no discrecional). Si está ejecutando una distribución de sistema operativo con estas características, entonces hay esencialmente dos capas de seguridad que se ejecutan simultáneamente, el DAC (sistema de permisos) normal que Unix siempre ha tenido y las versiones modernas de Windows tienen, y además de eso, el "firewall de aplicaciones" que imponen SELinux y sistemas similares. Por ejemplo, puede establecer una política que diga que el servidor web Apache puede escribir en / tmp y leer desde / var / www y / etc / apache. Cualquier otro acceso al disco será denegado independientementede permisos. Del mismo modo, puede especificar que solo acepte conexiones entrantes en el puerto 80 y no realice conexiones salientes. Entonces, incluso si hay un error que permitiría a alguien hacer algo muy malo, e incluso si Apache se ejecutara como root, no importaría, la política lo evitaría. Esto requiere una penalización de velocidad (muy pequeña) y puede ser una molestia si está utilizando una configuración inusual, pero en el caso normal puede aumentar su nivel de seguridad en gran medida tanto en Unix como en Windows.

mi. Capas: los sistemas Unix se componen de muchas más capas discretas y servicios que se pueden intercambiar. Esto significa que pueden analizarse individualmente para verificar su corrección y seguridad, intercambiarse, etc. Para casi cualquiera de estos, no hay necesidad de reiniciar. Esta es una gran ventaja en los sistemas de tipo servidor. Además, es más fácil deshabilitar (y desinstalar) cosas que no necesita en un sistema Unix. Por ejemplo, ¿por qué ejecutar una GUI en un servidor web? Aumenta la superficie de ataque y ocupa RAM.

F. Para aquellos que dijeron que Windows NT fue diseñado desde cero para la seguridad ... eso es cierto, el kernel fue diseñado desde el principio con funciones avanzadas de seguridad y multiusuario, pero hay dos problemas principales: 1. El pobre historial de seguridad de Microsoft , y 2. El sistema operativo en su conjunto fue diseñado para tener compatibilidad con aplicaciones heredadas de Windows, lo que significó muchos compromisos. Unix siempre ha sido multiusuario, por lo que las aplicaciones no tienen una gran sorpresa cuando se aplica la seguridad, lo que significa menos compromisos.

Noé
fuente
El acceso de seguridad a "archivos de dispositivo" en Windows NT se realiza a través de las ACL aplicadas en el administrador de objetos ejecutivos. Tiene aproximadamente el mismo modelo de ACL que el sistema de archivos. Re: su punto "a": las aplicaciones con logotipo que cumplen con las pautas de desarrollo de Microsoft tampoco necesitan acceso de escritura fuera del directorio de inicio del usuario. re: "b": aceptaré que hay una funcionalidad MAC limitada en Windows. Los niveles de integridad, agregados en Vista, son una forma de MAC. El "firewall avanzado" (también agregado en Vista) puede limitar el tráfico saliente en la forma en que lo describe si elige configurarlo de esa manera.
Evan Anderson
re: "e": Estoy de acuerdo, en principio, que menos software significa menos posibilidades de falla. Hay compilaciones internas de Windows que no tienen una GUI, pero Microsoft ha decidido no publicarlas. re: "f": los desarrolladores de terceros han sido más problemáticos re: conseguir políticas de seguridad predeterminadas sensatas establecidas en Windows que Microsoft. Personalmente, creo que Microsoft debería ser más estricto con las aplicaciones que se comportan mal, pero viven en un "espacio" diferente que los desarrolladores de sistemas operativos libres y de código abierto cuando se trata de asegurarse de que las aplicaciones de sus Clientes se ejecuten.
Evan Anderson
re: "El sistema operativo en su conjunto ... diseñado para tener compatibilidad ..." Win32 es un subsistema del núcleo, no es NT. Si Microsoft quisiera (o permitiría que alguien más) pudiese crear una "distribución" de Windows NT que no tuviera subsistema Win32, ni GUI, y arrancaría, por ejemplo, con el subsistema de kernel POSIX "Interix". Prácticamente toda la interfaz de usuario en un sistema operativo NT está basada en Win32, pero el núcleo es perfectamente capaz de soportar un entorno que no sea Win32.
Evan Anderson
0

Hay varias razones por las cuales los sistemas basados ​​en Linux a menudo se consideran más seguros que los sistemas Windows.

Uno es la habilidad del dueño. Si entra en Best Buy o Wal-mart (aquí en los EE. UU.) Y compra una computadora sin pensarlo mucho, ejecutará Microsoft Windows. Eso significa que hay una gran cantidad de sistemas Windows ejecutados por personas que no tienen idea. Como casi nadie compra una computadora Linux por accidente (al menos desde que Microsoft contraatacó en las netbooks), la mayoría de los usuarios de Linux saben algo acerca de las computadoras o alguien más lo ha configurado. Esto se aplica a todos los entornos donde hay personas que no saben lo que están haciendo; los que no ejecutan Windows y los que sí ejecutan varios sistemas operativos diferentes.

Uno es el número de atacantes. Microsoft Windows es un objetivo mucho más atractivo, debido a todas las máquinas mal administradas que existen. Hay muchos objetivos de Linux de alto valor, pero generalmente están bien administrados (junto con muchos de los objetivos de Windows de alto valor). Para una aproximación razonable, nadie se dirige a las computadoras Linux en general.

Uno es la cultura. En cualquier entorno Unix / Linux, existe una clara distinción entre las cuentas raíz y de usuario, y en casi todos los casos las personas trabajan en sus cuentas de usuario cuando no necesitan ser root. La distinción no es, en mi experiencia, tan fuerte en entornos Windows, ya que cada usuario normalmente tendrá una cuenta, con los privilegios asociados. Ahora estoy en mi computadora de trabajo, donde tengo una cuenta, una cuenta de administrador. Todo lo que hago lo hago una cuenta con altos privilegios. Cuando vaya a casa a mi caja de Linux, haré casi todo en una cuenta de privilegios limitados y escalaré cuando sea necesario. Mi esposa tuvo que discutir mucho para obtener dos cuentas en su computadora en el trabajo, una su cuenta de administrador normal y otra una cuenta de privilegios limitados para poder ver si los usuarios regulares tienen los privilegios de ejecutar lo que escribe.

Uno es la compatibilidad con versiones anteriores. Si bien Unix no comenzó como un sistema operativo seguro, al principio obtuvo seguridad. Los programas para Linux no requieren ejecutarse como root a menos que realmente hagan funciones de root. Windows, por otro lado, ejecuta una gran cantidad de programas que requieren cuentas de administrador porque eso es lo que los desarrolladores ejecutaron y probaron (ver párrafo anterior), y esos desarrolladores generalmente no eran conscientes de la seguridad, y eso solía funcionar bien. Ese es el gran problema que Microsoft estaba tratando de resolver con UAC. No creo que sea una solución particularmente buena, pero para ser sincero, Microsoft no va a encontrar una buena solución aquí (no creo que dejar caer la compatibilidad con versiones anteriores sea una buena solución aquí).

Esto lleva al hecho de que la mayoría de los problemas de seguridad a gran escala estarán en los sistemas de Microsoft, independientemente de los méritos de los modelos de seguridad, y la percepción de que Microsoft tiene los grandes problemas de seguridad. Por la heurística de disponibilidad, el hecho de que las personas puedan pensar en más problemas de seguridad de Microsoft sesga su juicio.

Esas son, en mi opinión, las razones válidas. No he tocado la seguridad real del sistema operativo, ya que no sé si Windows o una distribución de Linux es más vulnerable que la otra cuando la ejecuta un administrador experto. Linux tiene la ventaja del código abierto, ya que cualquiera puede encontrar y corregir errores, mientras que Microsoft ha instituido prácticas de seguridad que pueden o no funcionar mejor. (Si quisiera ejecutar un sistema operativo realmente seguro, elegiría OpenBSD, un sistema operativo de código abierto que se esfuerza por ser seguro). Ambos sistemas operativos tienen buenos sistemas de permisos (mi preferencia es la de Unix, pero otras personas razonables no están de acuerdo).

Por supuesto, existen malas razones para considerar que los sistemas operativos son menos seguros. Algunas personas tienen un sistema operativo favorito y no pierden la oportunidad de hablar mal de otros. A algunas personas no les gusta Microsoft o Richard Stallman o alguna otra persona u organización, y denigran los sistemas operativos asociados. Algunas personas no se han dado cuenta de que Microsoft ha cambiado con los años, ya que no hace tanto tiempo que a Microsoft realmente no le importaba la seguridad, y Windows realmente era menos seguro que Linux.

David Thornley
fuente
-1

No hay otra razón real que no sea la inercia. He visto a muchos defensores de Linux argumentando en contra de Windows (y no solo en el lado de la seguridad) que en la superficie parecen válidos, pero que, cuando cavas un poco, solo se aplican a Windows 3.1 o 95/98.

Lo he dicho antes, pero aunque Windows puede tener más parches / etc., estas son correcciones para las vulnerabilidades de seguridad que se han identificado . Y no son los que se han solucionado los que deben preocuparse, ¿verdad? Tampoco creo que ser de código abierto sea intrínsecamente más seguro. La aplicación de sus propios parches puede estar bien para un usuario doméstico, pero un usuario corporativo o administrador siempre querrá que Real Thing esté certificado para funcionar (y que haya sido probado completamente) con una variedad de aplicaciones, y que esté certificado para no romperse La próxima actualización del kernel. Lo mismo se aplica a las correcciones de la comunidad FOSS.

Entonces, en mi libro, es una mezcla de inercia, prejuicio y estar incrustado en la cultura UNIX con exclusión de alternativas.

Maximus Minimus
fuente
-2

Los procesos en Linux / Unix no pueden cambiar sus privilegios después de que se les asigne un usuario, los procesos en Windows pueden cambiar sus privilegios de usuario y cambiar su usuario durante el proceso.

Esta es la esencia de por qué Windows es menos seguro que Linux / Unix.

Cuervo de fuego
fuente
2
Eso solo es cierto si el contexto en el que se ejecuta el proceso tiene los derechos "Actuar como parte del sistema operativo" (SE_TCB PRIVILEGE). Si comienza un proceso con un contexto de seguridad que no tiene SE_TCB PRIVILEGE, el proceso no puede simplemente "suplantar" al azar (el NT-ismo para asumir otro contexto de seguridad) a otro usuario. Si está ejecutando una aplicación con SE_TCB PRIVILEGE sin una buena razón, entonces obtiene lo que se merece, IMO.
Evan Anderson el
Por lo tanto, la seguridad se aplica mediante un "contexto" tal como se establece en una regla de todo el sistema, por lo que Windows es menos seguro que Unix / Linux.
Fire Crow