Google
 
Mostrando entradas con la etiqueta vi / vim. Mostrar todas las entradas
Mostrando entradas con la etiqueta vi / vim. Mostrar todas las entradas

sábado, 4 de junio de 2011

vi shell


Buenas,



Leyendo sobre las CTF quals de Defcon 18 me encuentro con una interesante característica de Vi. Ejecución de una shell mediante el editor de texto.


Mas info:http://blog.stalkr.net/2010/05/defcon-18-ctf-quals-writeup-trivial-200.html

Un resumen de lo expuesto:
------------------------------------------------------------------------------
A few useful VIM commands:
:q! => quit
:o => open a file
:!<command> => run command *in default shell*


We tried to list files with :!ls but it did not work. So we opened /etc/passwd with :o /etc/passwd and discovered that the default shell of sheep user was /usr/bin/vim. Simply change it with:
:set shell /bin/bash

Then we were able to list files (:!ls)

------------------------------------------------------------------------------


También es posible escribir (:sh) o (:shell) y obtener la shell

sábado, 16 de enero de 2010

Vim: convierte mayusculas / minusculas de forma sencilla


Buenass,

necesitaba convertir de mayusculas a minusculas constantemente ciertas palabras por lo que intuía que vim tenía que tener una opción que lo automatizase y así es. En el blog de Flasheina hay un post muy breve donde explican cómo conseguirlo, éstos son los pasos sacados del post:

Convertir palabra a mayusculas:
gUw  <-- intuyo que U vendrá de Uppercase y w  de Word

Convertir palabra a minusculas:
guw

Si en vez de convertir una palabra, necesitamos convertir toda la línea se sustitye la 'w' por '$'.

Además, he creado una macro que introducía una cadena al inicio de la frase.

Gracias Flasheina,
David

viernes, 18 de diciembre de 2009

Vim, un mundo de buffers


Buenas

llevaba tiempo molesto porque cada vez que borraba una línea en vim, perdía lo último que había copiado. Al final, haciendo un poco de caso al editor me entero de que en vi todo funciona mediante 'buffers'. Cuando abres un archivo va un buffer, cuando abres otro con la pantalla divida va a otro, cuando copias/mueves/borras algo va a un buffer. Por eso cuando 1º copiaba y luego borraba se reemplaza el contenido del buffer. Para solucionarlo:

Hay que copiar guardando el contenido en un buffer con nombre mediante las comillas dobles, es decir, para copiar una línea existente hay que: "aVy

Con esa secuencia le indico a Vim que entre en modo visual y copie la linea actual a un buffer llamado a.

Por cierto, ahí va una chuleta de comandos de Vi


David

jueves, 6 de agosto de 2009

Extraer archivos de captura pcap manualmente (Wireshark, tcpdump)

Para extraer archivos pcap capturados con wireshark, tcpdump, ... desde Windows se puede utilizar la herramienta Network Miner, para linux tenemos tcpxtract pero suele dar fallos de segmentación por lo que he encontrado una web donde nos explican de foma muy sencilla como extraer los archivos de forma manual desde Wireshark.

Enlacehttp://sansforensics.wordpress.com/2009/03/10/pulling-binaries-from-pcaps/

Básicamente, los pasos son:
  1. Botón derecho en la petición GET del archivo que queremos
  2. Escogemos Follow TCP stream y nos muestra el dialogo seguido en esa petición
  3. Abajo escogemos la comunicación del servidor al cliente para obtener todos los paquetes del servidor.
  4. Pinchamos en Save as

  5. Estos son los pasos que se indican en el blog, pero en mi caso tuve que realizar otro más

  6. Abrir con un editor hexadecimal o con vim el archivo guardado y eliminar la cabecera http.
    $> vim -b captura

David

martes, 14 de abril de 2009

Visudo con VI

Ya que me estoy aficionando a vi, a la hora de utilizar Visudo para dar algunos permisos a mis usuarios me he encontrado con el editor era nano. Esto es así, porque visudo toma el editor por defecto y en mi caso era nano. Para actualizarlo:

#> update-alternatives --config editor

Saldrá una lista con los editores que podemos utilizar. Elegimos el número de VI, y la próxima vez que ejecutemos visudo, el editor será vi

David

lunes, 30 de marzo de 2009

Grabar macros en Vim

Supongo que cada vez soy un poco más friki por que me estoy acostumbrando a utilizar el editor Vim, y te das cuenta de que es muy potente.

Recuerdo que un día vi que existían unas macros para repetir instrucciones en el editor vi. Haciendo una simple busqueda vi este blog.

Yo lo utilize para dar un tabulado especifico y lo que hice fue:
  • q //entramos en modo grabar
  • a //etiqueta de la macro
  • I tab (abajo) //aqui ponemos las instrucciones que queremos que se ejecuten. En mi caso, I (para inserte al inicio de la linea), tab ( es el tabulador para que mueva la línea) y (abajo) que es la flecha de abajo para que se mueva de línea y así la próxima vez cambie de línea.
  • Esc
  • q //fin modo grabación
Ahora para poder ejecutarlo, le decimos el número de veces a ejecutar y la etiqueta de la macro:
  • 10@a //repetición de la macro 'a' 10 veces
  • @a // si solo queremos una vez

Espero que sea útil, por si se olvidan los pasos

David

miércoles, 17 de septiembre de 2008

Lo que kate no puede dejaselo a vi

Andaba liado con un fichero para hacer un ataque de fuerza bruta a una red y después de ver que el programa que me generaba el diccionario (wlandecrypter) no valía para mi MAC. Me decidí ha hacer uso del diccionario que generaba y adapatarlo a mis necesidades. La sorpresa fue cuando al intentar hacer el típico buscar y reemplazar con kate, se me quedaba frito al reemplazar 65536 cadenas. En seguida pensé en vi, y tras buscar el comando que permite el reemplazo, lo realizó al instante.

El comando es este:
:n,m s/cadena1/cadena2/g
donde n y m son la 1º y última línea a reemplazar, y cadena1 y cadena2 son las cadenas a buscar y reemplazar respectivamente. Se puede utilizar el carácter $ para indicar la última línea del fichero.

Así que ya sabéis, lo que kate no puede dejaseló a vi ... xD

David