Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - SmartGenius

#1
Scripting / Re: [Batch] Don't Worry
31 Agosto 2013, 23:55 PM
Lo he escrito en Windows 7 y en XP (virtualizado) y funciona normal.

Si lo has intentado modificar "añadiendole la variable al FOR que hace falta" te dara el resultado que tu comentas, pero en el codigo original no es asi.

Has de saber que que el simbolo % sirve como nombre de variable y es el que utilizo en expansion (!%%:~0,1!) para mostrar el caracter de control (Alt+1), variable que se establece en Set "%%_=%%_" com resultado del comando anterior. Es un truco.

Eso con respecto al codigo en si, por lo de la reglas, lo borrare, apenas tengas conocimiento de que has leido esto que he escrito, o bien puedes hacerlo tu directamente.
#2
Scripting / Re: Don't Worry
31 Agosto 2013, 22:43 PM
El codigo no tiene errores, esta escrito de manera intencional, me da la impresion que solo lo has leido e intentado interpretar que es lo que hace, mas no lo has ejecutado, que era el objetivo del mismo, no dar ninguna descripcion y que al ejecutarlo fuera una sorpresa, no es un codigo maligno.

Con respecto a las reglas, creo que lo unico que me ha faltado la etiqueta "[Batch]" en el titulo, por lo demas, no veo ningun inconveniente, pero si es mucha molestia, yo mismo me tomo la tarea de eliminarlo.

#3
Scripting / [Batch] Don't Worry
31 Agosto 2013, 19:42 PM
@Echo Off&Title Be Happy, Smile!!&Color 0A
Setlocal EnableDelayedExpansion
::Coded by SmartGenius, Just For Fun :)
Pushd %Windir%
For /f %%? in ('Tree^|Find "  "') do (
For /f %%_ in ('Cmd /U /C Echo.%%?^|More') Do (
Set "%%_=%%_"&Call Set /P "!Smart!=!%%:~0,1!"<Nul))
Pause&Exit


:silbar:  ;D
#4
@Echo Off

Set /p "Frase=Frase >"
Set /p "Word=Palabra >"
Call :Comp %Frase%
Echo. Coincidencias: %C%
Pause&Exit

:Comp
If "%~1"=="" Goto :Eof
If "%~1"=="%Word%" Set /a "C+=1"
Shift&Goto :Comp


:silbar:
#5
Scripting / Re: virus extraño crear vacuna
10 Agosto 2013, 00:07 AM
Hola, la verdad me gusta hacer este tipo de cosas, no hace mucho me tope con ese virus y por alguna razon se me hizo conocido o crei haberlo visto (a veces entro a leer aqui) por lo cual me di a la tarea de infectar una maquina de pruebas para anlizar el comportamiento de dicho malware y crear un script de desinfeccion tanto del sistema como de memorias que se encuentren conectadas, restaurando los archivos a su pocision original...

El virus al ejecutarse se adhiere a un proceso nativo del sistema para pasar desapercibido y desde alli infecta los nuevos dispositivos o memorias que se inserten, asi mismo esta constantemente ocultando archivos y asegurando que no se borren sus claves de registro.


El script lo que hace es (cerrar proceso nativo, limpiar temporales, analizar el registro y eliminar el virus, analizar las memorias USB y desinfectarlas)

@Echo Off

:: S.M.A.R.T - Simplified Malware Analisis and Removal Tool
:: This Script Removes FakeUSB Malware
:: TR/Crypt.Xpack.5314 - Worm.Gamarue.B - W32/Wauchos.LB!tr - Backdoor.Win32.Androm
:: https://www.virustotal.com/es/file/b832b82aa3656c9e2b62d693d9ee7c8b64bd1bd058b50506194eb9fa8ee9182a/analysis/1376005565/
:: Version: 1.0 (08-08-2013) Coded by SmartGenius


:Vars
Set "RunKey=HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run"
Set "Process=wupdmgr.exe"


:Main
Cls&Echo.
Echo.  This Script Removes FakeUSB Malware - Coded by SmartGenius
Echo.  Please Wait...
For %%A in (Kill, CleanTemp, RegKey, Removable) do (Call :%%A)
Echo.
Echo.  Job Finished
Start "" Explorer
Echo.&Pause&Exit


:Kill
Echo.  Checking if process is currently running...
Tasklist|find "%Process%" >nul
If %Errorlevel% EQU 0 (
Echo.  Process "%Process%" ... is Running^!
Taskkill /F /Im %Process% 2>nul
Echo.  Process "%Process%" ... Terminated^!
) else (Echo.  Echo.  Process:%Process% ... is not Running.)
Taskkill /F /Im explorer.exe >nul
Goto :Eof

:Regkey
Echo.  Analyzing Run Registry keys
For /f "tokens=1,2,3" %%F in ('REG QUERY %RunKey%^|find ".com"') do (
Echo.&Echo.  Entry: %%F&Echo.  File : %%H
Set "VFile=%%H"
Set "RKey=%%F"
)
Echo.  Deleting Key : "%RKey%"
REG DELETE %Runkey% /v %RKey% /f 2>nul
Echo.  Deleting File: "%VFile%"
Del /F /Q "%VFile%" 2>nul
Goto :Eof

:CleanTemp
Echo.  Deleting Temporaly Files and Folders
Pushd %temp%
For /f "tokens=1" %%D in ('DIR /B /A:D') do (RD /S /Q %%D 2>nul)
Del /f /q *.* 2>nul
Popd
Goto :Eof

:Removable
Echo.  Analyzing removable drives
For %%U in (E,F,G,H,I,J,K,L,M,N,O) do (
If Exist "%%U:\Thumbs.db" (
Echo.  Deleting malware from %%U:
Ping -n 1 127.0.0.1 >nul
Pushd %%U:
Attrib -r -s -h -a *.* >nul
For %%X in (lnk, xxc, ini, inf, db) do (Del /f /q *.%%X >nul)
Pause
Echo.  Restoring Files...
Cd "ÿ"
Move /Y * %%U:\ >nul
For /f "tokens=*" %%D in ('dir /b /a:d') do (Move /Y "%%D" %%U:\)
Cd\&Rd "ÿ" /S /Q >nul
Popd
))
Goto :Eof



Espero que sea de ayuda, si tienes dudas acerca de su funcionamiento no dudeis en comentar

Saludos.
#6
Scripting / Re: Amigo Batchero
13 Enero 2013, 23:05 PM
Buenas.... puedo opinar sobre el tema?

Para mi Batch es un Hobbie, lo considerare siempre un lenguaje de programacion, con una simple pregunta se me desperto la curiosidad pór saber que era X comando, y poco a poco fui indagando y leyendo y aprendiendo a manejar las bases de la logica de programacion, eso es lo que batch enseña dentro de su simpleza, antes que aprender a programar hay que aprender a tener logica, sin esto no podrias programar.

Batch es facil de manejar, es como el punto inicial al mundo de la programaicon, es limitado, pero enseña lo necesario para empezar realmente en la programacion, es algo como para que le pierdas el miedo y de ahi tomes iniciativa y vayas avanzando hacia otros lenguajes de mejor nivel y que ofrecen mas opciones para trabajar y hacer lo que quieres.

Batch sirve, no voy a decir que no, hay que saberlo utilizar, te sacara de apuros a la hora de automatizar tareas y no cuentas con herramientas suficientes mas que la consola, se usa mas que todo a la hora de dar soporte tecnico a resolucion de problemas, y lo digo por experiencia propia, lo he utilizado, solo que hay que tener buen conocimiento del funcionamiento de cada uno de los comandos disponibles.

Que es muy limitado si, pero ya lo he dicho antes, la limitacion no esta en si en el, sino en quien lo usa, y puedo hablar con propiedad.

Mi recomendacion, si no sabes que es programar y le tienes miedo a esto (hablo por mi) lo bueno seria preguntar, indagar, probar codigos y resolver tu mismo los problemas, te entusiasmas cuando logras lo que quieres, pero no hay que quedarse ahi, si de verdad te gusta esto hay que ir por algo mucho mejor y hay todo un abanico de posibilidades para escoger en cuanto a lenguajes de programacion, mucho mas completos.

Batch es eso, una puerta, una de tantas, a este mundo de programacion, no lo desprecio, con el empece, me desperto la curiosidad, el querer saber mas cada dia, resolver mis problemas y sentirme a gusto con mis logros diarios.

Puedo seguir opinando aqui bastante, pero quiero primero leer que me dicen, algunos de los grandes aqui del Batch presentes... ;)

Saludos.
#7
Scripting / Re: Negativos en batch
7 Junio 2012, 22:53 PM
Para el modificador /A del comando SET, no es necesario usar los simbolos de porcentajes para delimitar variables, ps este mismo las identifica y toma su valor



Ademas de que hace los calculos correctamente, tomando valores positivos y negativos, y segun las reglas de signos.

Saludos.
#8
Scripting / Re: [Reto Batch] cifrado caesar
11 Mayo 2012, 18:08 PM
Hace ya un tiempo habia publicado en el Blog un codigo de implementacion del Cifrado Cesar, es algo basico, pero cumple con su proposito.

@Echo Off&Title Caesar Crypt - SmartGenius
Setlocal Enabledelayedexpansion

:Init
Set /p "Text=Enter Text >"
If Not Defined Text Goto :Init
Set /p "Rot=Enter Seed >"
If Not Defined Rot Goto :Init
If 26 LEQ %Rot% Goto :Init
Call :Crypt.A Text Rot
Echo.
Echo. Result: %Text%
Echo.
Pause
Exit

:Crypt.A
If not defined %1 Goto:Eof
Set "c="
Set "d=ABCDEFGHIJKLMNOPQRSTUVWXYZ"
:Crypt.B
Set "chr=!%1:~,1!"
For /l %%l in (0 1 26) do (
if "!chr!" equ " " (
Set "%1=!%1:~1!"
Set "c=!c! "
Goto :Crypt.B)
if "!chr!" equ "!d:~%%l,1!" (
  set /a "x=(~((%%l-26)*-1)+!%~2!)+1"
  call set "c=!c!%%d:~!x!,1%%"
))
Set "%1=!%1:~1!"
If defined %1 goto:Crypt.B
Set "%1=!c!"
Goto :Eof


Es la implementacion normal, en mayusculas, con una rotacion maxima de 25, se puede ampliar el diccionario y un par de modificaciones en los limites para que funcione como ustedes quieren :)

Saludos.
#9
Lo que te digo es, el generador te da la clave en ASCII, cierto ?... pq de no ser asi estaria mal puesto que los caracteres HEXA solo van hasta la letra F.S

Saludos.
#10
Bien por el aporte brother, siemrpe me ha gustado hacer este tipo de codigos beneficiosos y que colaboren con los usuarios, buena iniciativa, y si necesitas colaboracion en algo no dudes en pedirla ok ;)