Gerador de Card Sharing

Script roda no Cron a cada 24 horas para gerar um novo login de teste de Card Sharing
Configurado para operadora NET e alguns servidores de backup
PS.: o geradorcs.sh fica agendado no Cron seguido do parâmetro de 1 a 9, que chama o servidor correspondente:

geradorcs.sh

#!/bin/sh
#gera acesso para servidor CS da NET
#[email protected] 29/10/2014

#variaveis globais
RANDOM=`date +%s`
EMAIL="`cut -f 1 -d'|' /partition/tmp/cs.txt`"
EMAIL="`echo $EMAIL | sed "s/%random%/$RANDOM/"`" #substitui a vari[avel %RANDOM% pelo numero gerado
PROVEDOR="`cut -f 2 -d'|' /partition/tmp/cs.txt`"
PASSO="`cut -f 3 -d'|' /partition/tmp/cs.txt`" #qual o passo esta o ultimo ponto
CONTA="`echo $EMAIL | wc -c`" #conta quantos caracteres tem o email
RESULT=$(($CONTA - 1)); #resultado de quantos caracteres tem o email (o WC soma 1 a mais que precisa ser subtraido)
MYNAME="1100"

CSBRASIL="//cliente.cs-brasil.com/BRACS/cliente.do?ctrl=usuario&acao=novo&PROVEDOR&operadora_1=&operadora_2=&operadora_3=&plano=net&ajax=true"
SERVIDORCS1="//painel.oitv.us/formulario_testes.php?r=RGNuRVh2L0wzL24zenlwcnVJaWxlRUYwU0YvWGhRUE1ocFdhWFAxYllnTT0,"
SERVIDORCS2="//cspadmin.dyndns.tv/painel/formulario_testes.php?r=ZHpLb2dTWUczTVhLNjhFVFV1Unp0ckxKWS85STRsQmlQb2NGeTQzMUt1ST0,"
SERVIDORCS3="//painelnet.hopto.me/sistema/formulario_testes.php?r=Nk9yUWcxc3RVY2lQc05vRDEzUGx6dkx0RHU4TzdiOVI2NThwLzN1RVVmWT0,"
SERVIDORCS4="//www.principal.painel-exclusivo.com/NET2015/formulario_testes.php?r=WlcwUjNFcWcwWm9YcVJLbjFTeUtuczFBVFQ2M0ZBNnRaMVMzZ2xsaVczVT0,"
CSARTTV1="//painel.oitv.us/formulario_testes.php?r=TmZ2blBvekdMaFlIYktVRW9yRXdVVGFGU25RaWplWFp5ZDU2Sy9tamx2OD0,"
CSARTTV2="//painel.oitv.us/formulario_testes.php?r=dG5VbnVhZHNaMGNDZzNjZDNOcU5DcXN6c3diQUVaZ0JJeElLMWVGcEkvMD0,"
CSARTTV3="//www.principal.painel-exclusivo.com/NET2015/formulario_testes.php?r=WEVhUzl0SzFramgwVlBjaE91Y1VGUG1McEVNTWRvUnMrY2M3TWJZVi85WT0,"
CSPREMIUM="//painel.oitv.us/formulario_testes.php?r=WWN0bmN5QThXWU81bnk5aEQ2cjE2ejVxQWw0K1NhU2ZCSTVsSE81eGZXUT0,"

atualiza() {

##Estas linhas abaixo eh para ser usada no envio dos emails com ponto (.) distribuido
SOMA=$(($PASSO+1))
if [ "$SOMA" -le "$RESULT" ]; then
	echo "$EMAIL|$PROVEDOR|$SOMA" > /partition/tmp/cs.txt
else
	/partition/scriptsteste/./sendmail.sh "Gerador de CS" "Pontos esgotados! Último email: `echo $EMAIL | sed "s/.\{$PASSO\}/&\./`"
fi
EMAIL="`echo $EMAIL | sed "s/.\{$PASSO\}/&\./`"
##
	echo "email=$EMAIL@$PROVEDOR<br/>"
	/usr/local/bin/./curl -k "$1" -d "nome=$MYNAME" -d "email=$EMAIL@$PROVEDOR" -d $2
}

case "$1" in
 1)
 atualiza $CSBRASIL "regiao=BRASILIA"
 exit
;;
 2)
 atualiza $SERVIDORCS1 "perfil%5B%5D=25"
 exit
;;
 3)
 atualiza $SERVIDORCS2 "perfil%5B%5D=4"
 exit
;;
 4)
 atualiza $SERVIDORCS3 "perfil%5B%5D=5"
 exit
;;
 5)
 atualiza $SERVIDORCS4 "perfil%5B%5D=16"
 exit
;;
 6)
 atualiza $CSARTTV1 "perfil%5B%5D=25"
 exit
;;
 7)
 atualiza $CSARTTV2 "perfil%5B%5D=25"
 exit
;;
 8)
 atualiza $CSARTTV3 "perfil%5B%5D=16"
 exit
;;
 9)
atualiza $CSPREMIUM "perfil%5B%5D=25"
 exit
;;
esac
exit

O CGI abaixo uso para gerenciar o nome de usuário base que vai ser gerado aleatoriamente separando por pontos entre as letras:

cs.cgi

#!/bin/sh
eval "`/usr/bin/proccgi`"

EMAIL="`cut -f 1 -d'|' /partition/tmp/cs.txt`"
PROVEDOR="`cut -f 2 -d'|' /partition/tmp/cs.txt`"
PASSO="`cut -f 3 -d'|' /partition/tmp/cs.txt`"
GERADOR="/partition/scriptsteste/./geradorcs.sh"

echo "Content-Type: text/html;"
echo ""

cat << CLEOF

<html><head>
<title>Gerador de CS NET</title>
<style>
.estilo{font-family:cursive;font-size:30px;border-radius:15px;}
</style></head>
<body>
<form method="POST" action="cs.cgi">
	<h1>Configurações globais</h1>
	<span>Variável aleatória: %random%</span><br/><br/>
	<span>Símbolo de +: %2B</span><br/><br/>
	<table>
	<tr><td class="estilo">Email: </td><td><input class="estilo" type="text" value="$EMAIL" name="email"></td></tr>
	<tr><td class="estilo"> Provedor: </td><td><input class="estilo" type="text" value="$PROVEDOR" name="provedor"></td></tr>
	<tr><td class="estilo"> Passo atual: </td><td><input class="estilo" type="text" value="$PASSO" name="passo">(Para usar como referencia no saltador de pontos)</td></tr>
	<tr><td class="estilo"><input class="estilo" type="submit" name="Enviar" value="Salvar"><br/><br/></td></tr>
	</table>
	<hr>
	<h1>Gerar credenciais</h1>
	<input class="estilo" type="submit" name="Enviar" value="CSBRASIL">
	<input class="estilo" type="submit" name="Enviar" value="SERVIDORCS1">
	<input class="estilo" type="submit" name="Enviar" value="SERVIDORCS2">
	<input class="estilo" type="submit" name="Enviar" value="SERVIDORCS3">
	<input class="estilo" type="submit" name="Enviar" value="SERVIDORCS4">
	<input class="estilo" type="submit" name="Enviar" value="CSARTTV1">
	<input class="estilo" type="submit" name="Enviar" value="CSARTTV2">
	<input class="estilo" type="submit" name="Enviar" value="CSARTTV3">
	<input class="estilo" type="submit" name="Enviar" value="CSPREMIUM">
	</form>
	
</body></html>

CLEOF

case "$FORM_Enviar" in
Salvar)
	echo "$FORM_email|$FORM_provedor|$FORM_passo" >/partition/tmp/cs.txt
	EMAIL="`cut -f 1 -d'|' /partition/tmp/cs.txt`"
	PROVEDOR="`cut -f 2 -d'|' /partition/tmp/cs.txt`"
	PASSO="`cut -f 3 -d'|' /partition/tmp/cs.txt`"
	echo "<p class="estilo">Configurações salvas<br/><span class="estilo">Email: $EMAIL, Provedor: $PROVEDOR</p>"
;;
CSBRASIL)
$GERADOR "1"
;;
SERVIDORCS1)
$GERADOR "2"
;;
SERVIDORCS2)
$GERADOR "3"
;;
SERVIDORCS3)
$GERADOR "4"
;;
SERVIDORCS4)
$GERADOR "5"
;;
CSARTTV1)
$GERADOR "6"
;;
CSARTTV2)
$GERADOR "7"
;;
CSARTTV3)
$GERADOR "8"
;;
CSPREMIUM)
$GERADOR "9"
;;
esac

Exemplos de uso:

Email: fulano

Provedor gmail.com

Passo atual: 0

Quando o geradorcs.cgi rodar a primeira vez, vai tentar gerar para o email “[email protected]”, depois “f.ulano…”, depois “fu.lano…” e assim consecutivamente até “[email protected]

Quando o ponto chegar depois du último caractere foi esgotado, então me envia um email avisando (a linha 32 no geradorcs.sh), daí acesso o gerenciador e em nome coloco “[email protected]” e no passo 3.

Então da próxima vez que executar o email será “[email protected]” depois “f.ul.ano…” e assim segue ate o fim do ponto novamente.

Esta máscara de pontos é aceita pelo Gmail podendo conter no máximo 2 pontos (tipo f.ula.no), quando todas as alternativas forem esgotadas pode ser trocado o provedor para “googlemail.com” e recomeçar com o ponto no início, que o servidor vai entender que é um novo email, assim da pra gerar dezenas de testes de CS com o mesmo email.