Detecta Rootkits y rastros de Malware en Linux con Chkrootkit y Rkhunter

En posts anteriores ya hablamos sobre si es o no necesario utilizar un antivirus en Linux, y en caso de que optes por utilizar uno, en el siguiente enlace tienes una guía completa para utilizar ClamAV, uno de los antivirus más populares en GNU/Linux. Así que, sin dejar de hablar de amenazas, pero dejando a los virus a un lado, la guía de hoy está más enfocada en detectar la presencia de rootkits, un programa o conjunto de programas que generalmente se utilizan para camuflar otros procesos maliciosos, archivos o cambios de registro sospechosos en el sistema. Para ello, haremos uso de Chkrootkit y Rkhunter, dos de las herramientas probablemente más conocidas en el mundo Linux cuando nos movemos por esos terrenos.

Tanto Chkrootkit como Rkhunter funcionan en esencia de un modo muy similar, ya que ambos se centran en analizar tu sistema en busca de rootkits y cambios sospechosos en configuraciones críticas del sistema. En este aspecto, ninguno de los dos se ejecuta en segundo plano, sino que se limitan a hacer análisis a demanda del usuario, por lo que no hay ningún problema por instalar los dos en el mismo sistema. Es más, contar con ambos te será de gran utilidad para tener una segunda opinión y descartar posibles falsos positivos.

Instala y ejecuta Chkrootkit

Chkrootkit es un script para sistemas UNIX y Linux que realiza un análisis rápido en busca de signos y cambios en ciertas configuraciones del sistema que indiquen la presencia de rootkits.

Si bien se ejecuta desde la terminal, su sintaxis es extremadamente simple, por lo que no requiere apenas conocimientos previos en ese sentido.

NOTA : Si aun no estás muy habituado a trabajar con la línea de comandos y deseas aprender desde el principio, puedes consultar esta guía de varios artículos sobre como dar tus Primeros pasos con la Terminal de Linux

Instalando…

El hecho de que se encuentre en los repositorios oficiales de la mayoría de distribuciones GNU/Linux facilita enormemente la instalación. Así, para instalarlo en Ubuntu, Debian o derivados puedes hacerlo rápidamente por consola mediante un simple apt-get install.

$ sudo apt-get install chkrootkit

En otras distros el proceso de instalación es muy similar, tan solo deberás sustituir el apt-get por la sentencia que utilice la distro (por ejemplo, Fedora y las distros derivadas de RedHat utilizan yum).

NOTA : En este post que te enlazo tienes una guía completa sobre comoinstalar paquetes y aplicaciones desde la Terminal de Linux para el caso de Ubuntu, Debian y derivados

Buscando, Buscando…

Para ejecutar Chkrootkit se requieren permisos de superusuario, por lo que en Ubuntu deberemos ejecutarlo siempre con el ‘sudo’ delante, y en Debian, Fedora y otras distros deberás loguearte previamente como usuario root mediante el comando ‘su’.

Realmente no dispone de muchas opciones de escaneo, y al final lo más útil es hacer un escaneo estándar con el comando que tienes a continuación. El examen no suele durar más de unos segundos, y te irá mostrando por pantalla los diferentes archivos analizados.

$ sudo chkrootkit

Otra opción interesante es hacer un escaneo igual, pero mostrando por pantalla solamente las detecciones y los avisos o las alertas, de modo que sean mucho más fáciles de encontrar. Para ello, debes utilizar el parámetro -q.

$ sudo chkrootkit -q

Estas son realmente las dos únicas opciones que me han parecido relevantes por tal de sacarle el máximo provecho.

Instala y ejecuta Rkhunter

Rkhunter es un script para UNIX y Linux que escanea tu sistema a nivel local para detectar cualquier signo de rootkit o backdoors. Principalmente funciona mediante base de firmas, pero no solo se limita a eso, sino que también examina que los permisos del sistema sean correctos, que no haya puertos abiertos, etc.

Instalando…

Al igual que Chrootkit, Rkhunter se encuentra en los repositorios de la mayoría de distros Linux, por lo que puedes instalarlo desde la terminal con un apt-get install.

$ sudo apt-get install rkhunter

En este caso, durante el proceso de instalación te aparecerá un prompt pidiéndote información sobre la configuración del servidor de correo del sistema para el envío de logs, etc. Si no tienes pensado utilizarlo puedes seleccionar la primera opción y seguir adelante.

Configuracion del servidor de correo

Rkhunter se ejecuta también desde la terminal y es un poco más completo que Chkrootkit, aunque en la practica con recordar un par de comandos simples es más que suficiente para lo que nos interesa.

Actualizando la base de firmas…

Para empezar, una de las cosas que deberías hacer antes de nada es comprobar si hay actualizaciones.

$ sudo rkhunter --update

Este comando correrá un script que comprobará en primer lugar si la versión de Rkhunter instalada es la más reciente, y en segundo lugar descargará e instalará las actualizaciones de la base de datos de firmas.

Si has instalado el paquete desde los repositorios oficiales de Ubuntu o Debian, es muy posible que te alerte de que existe una versión más reciente de Rkhunter. Esto es normal, ya que los repositorios de las versiones estables no suelen disponer de las ultimas versiones.

Si quieres disponer de la ultima versión, siempre te queda la opción de descargar Rkhunter desde la web oficial del proyecto, aunque personalmente en la mayoría de software siempre prefiero mantener la versiones de los repositorio.

Detectando amenazas…

Una vez hecho esto, ya puedes empezar a analizar tu sistema en busca de rootkits. Si quieres, puedes consultar un listado con los diferentes tests que Rkhunter ejecuta en un escaneo completo.

$ sudo rkhunter --list tests

Visto esto, la mejor opción es hacer un escaneo completo del sistema, que como habrás visto no se limita solamente a buscar la presencia de rootkits conocidos por base de datos, sino que hace varios tests entro los que examina archivos importantes del sistema en busca de cambios de configuración, hace un check rápido de los logs del sistema, e incluso hace un análisis a nivel de red para detectar puertos abiertos, etc.

$ sudo rkhunter --check

Si en algún momento te interesa deshabilitar un test determinado para que no se lleve a cabo durante el escaneo, puedes hacerlo con este comando:

$ sudo rkhunter --disable <test> --check

Y ya para ir acabando, si tienes curiosidad puedes acceder al manual de Rkhunter con todo el conjunto de opciones mediante el comando man:

$ man rkhunter

Ultimas consideraciones

Una de las desventajas que tienes es que ambos suelen tener algunos falsos positivos, y muchas veces te dan advertencias sobre amenazas que realmente no son tal. Lo bueno de tener los dos es que puedes solapar los resultados para estar más seguro.

Normalmente, los dos no darán el mismo falso positivo, por lo que si Chkrootkit te advierte de una posible amenaza en un archivo concreto, puedes ejecutar Rkhunter si efectivamente te detecta la misma amenaza.

En caso de duda, yo siempre suelo buscar info en Google o en foros sobre los resultados obtenidos, ya que es una manera rápida de comprobar si una amenaza concreta detectada en tu sistema es un conocido falso positivo o no.

Y hasta aquí el post de hoy. Si te ha parecido de utilidad puedes compartirlo en tus redes sociales, y si tienes algún comentario, duda, o algo que añadir o corregir no dudes en comentar aquí debajo.

Hasta la próxima;)

This article originally appeared on computernewage.com

Why RAM Boosters And Task Killers Are Bad For Your Android

Stop killing your Android phone! There’s a lot of misinformation out there regarding the usefulness of RAM booster apps and task killer apps. At first glance they sound incredibly useful, but a closer look shows that they could actually be harming your phone instead.

Long story short: Simply avoid using RAM booster and task killer apps. They may have once been useful, but Android has progressed far enough that these sorts of apps are now outdated, unnecessary, and counterproductive. If you want to know why they’re bad, keep reading.

How Android Handles RAM and Apps

android-task-killers-overview

To understand how Android handles RAM, we first need to understand what RAM is and how it works.

There’s a lot of technobabble that could be said about it, but for our purposes, it’s enough to know that RAM means random access memory and it’s a type of storage that’s incredibly fast but disappears when the device shuts down. Therefore, RAM is useful for holding temporary information that changes a lot and gets frequently accessed.

On Windows, you want to keep as much RAM available as you can so that programs have enough room to operate. When RAM fills up, Windows is forced to start using hard drive space as virtual RAM and hard drives are much slowerthan physical RAM.

This is not true for Android.

Android’s operating system has its own native handler for assigning RAM to apps and making sure that all of it is being used in the most optimal way. In fact, Android purposely tries to keep apps loaded into RAM for better performance. RAM is fast, remember? On mobile devices, every bit of speed is critical for a good user experience, so keeping apps in RAM is actually a good thing.

If you use a lot of different apps, you may want to consider a model with more RAM the next time you buy a smartphone.

Not only does Android handle RAM assignment, but it also keeps track of background apps so they don’t use up unnecessary processor resources. There’s no noticeable performance hit for leaving apps loaded in RAM. There’s one exception to this, but we’ll cover that in the last section of this article.

The Deceit of RAM Boosters & Task Killers

android-task-killers-drawbacks

At this point, it might seem like RAM boosters and task killers are neutral. They might not necessarily help with Android performance, but they aren’t bad to have around, right? Maybe they provide some marginal benefits? Unfortunately, no. They are detrimental.

Typical Windows wisdom says to kill RAM-hogging processes and defragment your hard drive for faster speeds. This is good in the context of Windows, but applying it to Android results in negative gain.

For one, Android uses an SD card for file storage rather than a traditional hard drive. SD cards are a type of flash memory — similar to solid state drives — and don’t need to be defragmented. In fact, one of the downsides to flash memory is a limited number of times that data can be written to the card before it expires. By defragmenting an SD card, you can decrease its lifespan.

When you clear apps from RAM, Android is just going to load them into RAM again the next time it needs to access those apps (for notifications, updates, and other background details). This is actually slower for you since SD cards are slower than RAM.

And in the case of automatic task killers, you end up having to sacrifice some of your RAM and CPU to the task killer app itself, which is always running and monitoring for opportunities when tasks should be killed. This can be a big drain on battery life — and you aren’t getting anything useful in return!

Improving Android Performance & Battery Life

android-task-killers-performance

If you’re using a task killer, it’s likely the case that you just aren’t happy about your device’s performance. It’s slow, perhaps even sluggish, and using it is more of a nuisance than a joy. If a task killer isn’t going to help, what can you do to boost Android performance?

Kill misbehaving apps. You should avoid killing apps just to free up RAM, but always be on the lookout for apps that use an unusual amount of CPU. These can seriously slow down performance and kill battery life. Watchdog Task Manager is a great app for this.

Use lightweight apps. Many times, poor performance can be attributed to a particular app rather than the Android device itself. For frequently used apps (e.g., browsers, notebooks, music players, etc.) always go for the ones that are most lightweight and battery friendly.

Toggle unnecessary features. It’s convenient to keep your data on all of the time, but it’s going to have an impact on performance. The same goes for always keeping your WiFi, Bluetooth, and GPS on. Toggle them off when you aren’t using them to preserve resources. Use a toggle widget to make it even easier to handle.

Install a custom ROM. This tip is a bit more advanced and should only be considered by those who are familiar with Android troubleshooting. Installing a custom ROM is like installing a different distribution of Linux: some ROMs are faster and less battery intensive, which is great for weaker devices.

For more tips, check out Guy’s roundup of nine ways to extend Android battery life.

What are your experiences with task killer apps? Do you use one for your Android right now? Have they been helpful or have they just been placebo? Share your thoughts with us in the comments below!

Image Credits: Phone Apps Via Shutterstock, Phone Circuitry Via Shutterstock, Charging Battery Via Shutterstock

This article originally appeared on makeuseof.com

…Searching Always New Horizons.