Underc0de

Foros Generales => Dudas y pedidos generales => Mensaje iniciado por: Hax0r_666 en Julio 27, 2015, 03:55:42 PM

Título: Borrar Logs desde una shell cargada en un servidor.
Publicado por: Hax0r_666 en Julio 27, 2015, 03:55:42 PM
¿Si tengo una shell en un servidor puedo borrar los logs desde esta? Si es así ¿cómo lo hago?  ::)
Título: Re:Logs
Publicado por: Jimeno en Julio 27, 2015, 04:07:14 PM
Los logs de los comandos lanzados con el usuario se guardan en su carpeta personal, en un archivo llamado .bash_history

Si quieres un comando completo:
Código (bash) [Seleccionar]
rm ~/.bash_history; history -c; logout
Título: Re:Borar Logs desde una shell cargada en un servidor.
Publicado por: v4char en Julio 27, 2015, 09:12:44 PM
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
¿Si tengo una shell en un servidor puedo borrar los logs desde esta? Si es así ¿cómo lo hago?  ::)

Es muy importante saber que sistema operativo es donde guarda los log hay muchos servidores que guardan los log en particiones ocultas y la mejor forma es mirar el sistema operativo donde guarda los logs ( busca en google) y utilizar grep por si te quedo algo ya si quieres que cante menos puedes eliminar solo donde este tu ip usando grep de nuevo
Título: Re:Borrar Logs desde una shell cargada en un servidor.
Publicado por: blackdrake en Julio 30, 2015, 06:42:40 AM
Si no tienes muchos conocimientos puedes lanzar un zapper y te curas en salud, aunque es mucho más "marronero"

Saludos.
Título: Re:Borrar Logs desde una shell cargada en un servidor.
Publicado por: rand0m en Julio 30, 2015, 12:11:51 PM
Si ponemos un espacio en blanco al principio del comando éste no se guardará en el histórico.
Código (bash) [Seleccionar]
rand0m@box0:~$ history -c
rand0m@box0:~$  echo "This will not appear on history"
This will not appear on history
rand0m@box0:~$ echo "But this will"
But this will
rand0m@box0:~$ history
    1  echo "But this will"
    2  history
Título: Re:Borrar Logs desde una shell cargada en un servidor.
Publicado por: B3N en Julio 30, 2015, 01:38:07 PM
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Si ponemos un espacio en blanco al principio del comando éste no se guardará en el histórico.
Código (bash) [Seleccionar]
rand0m@box0:~$ history -c
rand0m@box0:~$  echo "This will not appear on history"
This will not appear on history
rand0m@box0:~$ echo "But this will"
But this will
rand0m@box0:~$ history
    1  echo "But this will"
    2  history


Código (bash) [Seleccionar]
[b3n@genesis ~]$  echo "Si se guarda"
[b3n@genesis ~]$ history
  386   echo "Si se guarda"
  387  history
[b3n@genesis ~]$


Título: Re:Borrar Logs desde una shell cargada en un servidor.
Publicado por: Jimeno en Julio 30, 2015, 02:17:37 PM
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Si ponemos un espacio en blanco al principio del comando éste no se guardará en el histórico.
Código (bash) [Seleccionar]
rand0m@box0:~$ history -c
rand0m@box0:~$  echo "This will not appear on history"
This will not appear on history
rand0m@box0:~$ echo "But this will"
But this will
rand0m@box0:~$ history
    1  echo "But this will"
    2  history


Código (bash) [Seleccionar]
[b3n@genesis ~]$  echo "Si se guarda"
[b3n@genesis ~]$ history
  386   echo "Si se guarda"
  387  history
[b3n@genesis ~]$



Código (bash) [Seleccionar]

export HISTFILE=/dev/null
echo "¿Se guarda?"



Con eso no se guarda (es temporal)


Cuando acabes de ejecutar los comandos que desees lanzas:
Código (bash) [Seleccionar]
history -c

y solucionado.
Título: Re:Borrar Logs desde una shell cargada en un servidor.
Publicado por: B3N en Julio 30, 2015, 03:31:56 PM
Cita de: Jimeno
Código (bash) [Seleccionar]
export HISTFILE=/dev/null
echo "¿Se guarda?"

Código (bash) [Seleccionar]
[b3n@genesis ~]$ export HISTFILE=/dev/null
[b3n@genesis ~]$ echo "se guarda de forma temporal"
[b3n@genesis ~]$ history
   ...
  495  echo "se guarda de forma temporal"
  496  history
[b3n@genesis ~]$


Es lo mismo con: export HISTFILE=
Título: Re:Borrar Logs desde una shell cargada en un servidor.
Publicado por: B3N en Julio 30, 2015, 03:42:08 PM
Esto es para que no se registren los comandos con un espacio delante, como dice rand0m:

Código (bash) [Seleccionar]
[root@genesis ~]#  export HISTCONTROL=ignorespace

Probemos a ver:
Código (bash) [Seleccionar]
[root@genesis ~]#   rm -rf /*
[root@genesis ~]#  history
bash: history: command not found
[root@genesis ~]# 


???


Espero que no se hayan creido esa ultima  ;)

PD: No obstante me parece que la duda de HAXOR_666 es como borrar los logs, no el historial de comandos. En este caso seria necesario que especificara en cual sistema quiere borrar los logs, Windows, Linux, Mac, etc.
Título: Re:Borrar Logs desde una shell cargada en un servidor.
Publicado por: q3rv0 en Julio 30, 2015, 04:24:13 PM
Otro truquito!

Código (bash) [Seleccionar]
rm .bash_history
ln -s /dev/null .bash_history
Título: Re:Borrar Logs desde una shell cargada en un servidor.
Publicado por: v4char en Julio 30, 2015, 06:21:12 PM
Eso es el historial de  comandos pero tambien hay logs de apache con conexiones http o los del servidor de correo si realizaste la intrusion por ellos deberias borrarlos.
Título: Re:Borrar Logs desde una shell cargada en un servidor.
Publicado por: blackdrake en Julio 31, 2015, 04:23:56 AM
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Eso es el historial de  comandos pero tambien hay logs de apache con conexiones http o los del servidor de correo si realizaste la intrusion por ellos deberias borrarlos.

Como ya te dije, de uno en uno o bien usa un zapper...
Título: Re:Borrar Logs desde una shell cargada en un servidor.
Publicado por: rand0m en Julio 31, 2015, 08:01:24 AM
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Eso es el historial de  comandos pero tambien hay logs de apache con conexiones http o los del servidor de correo si realizaste la intrusion por ellos deberias borrarlos.

Como ya te dije, de uno en uno o bien usa un zapper...
Tal y como se nos está planteando la pregunta el zapper es la mejor opción. Si sólo quieres borrar los logs de un servicio en particular lo mejor sería irse al archivo de configuración del servicio en cuestión (Por ejemplo /etc/apache2/apache2.conf).
¿Quieres borrar los logs de algún servicio en particular? A por él.
¿Quieres borrar todos los logs que puedas de un plumazo sin buscarlos por el sistema? Un zapper.
¿Quieres borrar todos los logs que puedas sin usar un zapper? Averigua cuáles son los logs que quieres borrar y guarda los archivos clave en una lista. Con ella podrás hacer tu propio zapper en Bash, Perl, Python o Ruby especialmente diseñado para que haga lo que tú quieres (Sin más sorpresas que las "funciones aleatorias que creamos en nuestros programas", mal llamados "bugs").
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Código (bash) [Seleccionar]
[b3n@genesis ~]$  echo "Si se guarda"
[b3n@genesis ~]$ history
  386   echo "Si se guarda"
  387  history
[b3n@genesis ~]$

Vale, bien, tienes razón, no se puede ir con tanta seguridad. Para comprobar eso basta con hacer un par de cositas:
Código (bash) [Seleccionar]
root@box0:/home/rand0m# cat /root/.bashrc |grep HISTCONTROL
root@box0:/home/rand0m# cat /home/rand0m/.bashrc |grep HISTCONTROL
HISTCONTROL=ignoreboth

Revisando el estado de HISTCONTROL en .bashrc podemos ver si nos da juego.
ignorespace es lo que hace que se guarden los comandos con el espacio delante.
ignoreboth es lo que hace que no se guarden los del espacio delante NI LOS REPETIDOS (Como un ls -l nc.log mientras esperamos a que algo se termine de transferir por netcat).
erasedups hace que no se muestren los comandos repetidos en el historial.
Es muy útil conocer esta chorradilla.