netcat

Netcat é uma das ferramentas mais legais que existe no mundo *nix, se bem usado pode salvar sua vida quando não se tem outras ferramentas de rede disponíveis. É uma versão mais sofisticada do telnet. Com ele você pode transferir arquivos, testar portas ( como o nmap ), criar um web server etc.

Truques básicos:
Conectando na porta 80 do localhost (tente com outras URLs e servidores):

$ nc localhost 80

Servidor socket na porta 5000:

nc -l 5000

Se combinados os dois exemplos anteriores vão se comportar como um Chat 🙂
Um webserver muito útil para testar portas ou até mesmo subir uma página de manutenção em um servidor.

$ while true; do; sudo nc -l 80 < index.html; done

O Loop while permite renderizar a página para mais de uma conexão, é possível servir formatos binários também.

Mais um exemplo legal, um backdoor shell 🙂 Precisa acessar um computador remoto ? Sem problemas:

Abrindo a porta 2222 com o bash rodando:

$ ncat -v -l 2222 -e /bin/bash

Para acessar sua backdor basta:

$ ncat localhost 2222

Lembrando que pode ser usado em servidores remotos, basta trocar o localhost pelo IP ou dominio.

É possível usar o netcat como portscanner, por exemplo para escanear da porta 1 até a 100:

 

$ nc -v -z localhost 1-100

Transferência de arquivos também não é um problema para netcat:

Para disponibilizar um arquivo na porta 5000:

$ nc -l 5000 < /etc/passwd

Para copiar o arquivo:

 $ nc localhost 5000 > passwd

Clonar um HD/SSD de um servidor direto no de outro também é possível:

No servidor original:

$ dd if=/dev/vda | nc -l 5000

No servidor que vai receber a cópia:

$ nc -n localhost 5000 | dd of=/dev/vda

Sempre lembrando que os comandos valem para servidores e máquinas remotas, é só trocar o localhost dos exemplos pelo domínio.

Backup remoto também não é um limitador para o netcat:

No servidor

$ nc -l 5000 | tar -xv

No cliente:

$ tar -cv /path/ | nc localhost 5000

fonte http://aarvik.dk/netcat-basics-and-a-few-smart-examples/

Hacks CSS

Se tem uma coisa que aprendi com CSS, é que pra funcionar do jeito que você precisa, tem que hackear… Esse povo de frontend tem que dar nó em pingo d’água pra conseguir coisas simples em um site. E dado a quantidade de linguagens que geram CSS que tem por ai, SASS, LESS , da pra ver que CSS não foi uma idéia tão bem executada. Não estou falando que faltam efeitos visuais, nada disso, mas do pepino que virou “decorar” páginas com CSS, provavelmente o CSS é o maior arquivo agregado das sua página, minificar é praticamente te obrigatório. Fico imaginando se o CSS vai chegar a sua versão 4 antes de aparecer alguma alternativa.
Alguns sites me ajudaram a entender melhor CSS e até mesmo como torcer o CSS pra fazer o que precisava, segue a lista:
Tudo sobre Floats:
http://css-tricks.com/all-about-floats/
Usando o hack Clear-fix
http://css-tricks.com/snippets/css/clear-fix/
Suporte inline-block cross browser
http://foohack.com/2007/11/cross-browser-support-for-inline-block-styling/
Validação CSS3 ( boa sorte com isso !)
http://jigsaw.w3.org/css-validator/
Desenvolvedor frontend, você é um heroi cara ! desenvolvimento frontend é uma zona, parabéns por fazer nossos sites funcionarem.

N truques em python

python -m SimpleHTTPServer  # cria servidor http na porta 8000

python -m smtpd -n -c DebuggingServer localhost:1025 # cria servidor smtp na porta 1025
a, b = b, a  # troca os valores de a e b sem precisar de variavel auxiliar

x = "Alguma coisa"
y = x[::-1] #  Inverte a string
import antigravity # só no python 3

e por ai vai ...