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 - ThunderCls

#191
1- Cuando copies un codigo no lo pases por gtranslator...please (funcion != function, para != for, etc)  :¬¬
2- El codigo evidentemente esta ofuscado, si conoces un poco de js o sabes usar google podras quitarle la proteccion y podras ver que hace el codigo escondido
Saludos
#192
Cita de: Beginner Web en  2 Enero 2019, 03:42 AM
Pues si investigué, es más encontre el mismo ejercicio en internet y cuando voy a a consultar me dicen que estoy buscando de internet, que no haga eso, y bueno ellos querian que hiciera a su forma, entonces lo hice y al final aprobé la materia.

Pues felicidades!  ;-) ;)
#193
Cita de: XKC en  3 Enero 2019, 23:01 PM
¿Porque windows permite que un proceso escriba en la memoria de otro?

Pues porque esto le da al SO una flexibilidad impresionante, aunque como todo en la vida puede ser usado con buenos fines pero tambien con malos fines como es el caso del malware. Pero si hay muchos "buenos usos" de la injeccion de codigo por parte de los desarrolladores y te pongo algunos ejemplos:
1- Los programas antivirus a menudo inyectan código en los procesos. Pueden usarlo para monitorear el tráfico de la red, bloquear contenido web peligroso, o usarlo en tecnicas de heuristica, por ejemplo.
2- Muchas aplicaciones de terceros pueden usar la inyeccion de codigo para agregar funcionalidad al propio sistema o a otras aplicaciones de terceros (aplicaciones de temas visuales, shortkeys, plugins, etc)
3- Los drivers graficos de NVIDIA inyectan DLLs en varios procesos para realizar tareas graficas
4- etc.....

La inyeccion DLL nunca va a ser 100% segura, es un metodo no muy limpio de lograr diferentes objetivos en el sistema, pero sin embargo ahi esta como una parte normal del SO, constantemente sucediendo sin que te des cuenta.


Cita de: XKC en  3 Enero 2019, 23:01 PM
¿Que requisitos se deben cumplir para que esto pueda llevarse a cabo, es decir, privilegios de sistema, etc..?

La apertura de otro proceso se somete a restricciones. Desde Vista, existen algunas protecciones junto con Microsoft UAC. La protección principal para la memoria de proceso es el Control de integridad obligatorio (MIC). MIC es un método de protección para controlar el acceso a objetos en función de su "nivel de integridad". Hay 4 niveles de integridad:

    Nivel bajo para el proceso que está restringido para acceder a la mayoría del sistema (por ejemplo, Internet Explorer)
    Nivel medio es el valor predeterminado para cualquier proceso iniciado por usuarios sin privilegios y también usuarios de administrador si UAC está habilitado.
    Alto nivel para procesos en ejecución con privilegios de administrador.
    Los usuarios del SISTEMA ejecutan el nivel del sistema, generalmente el nivel de los servicios y procesos del sistema que requieren la mayor protección.

Para nuestra preocupación, eso significa que el proceso del inyector solo podrá inyectarse en un proceso que se ejecuta con un nivel de integridad inferior o igual.
Por ejemplo, si UAC está activado, incluso si la cuenta de usuario es administrador, el proceso se ejecutará en el nivel de integridad "Medio" (a menos que se ejecute específicamente como administrador).

fuente: http://blog.sevagas.com/?PE-injection-explained
#194
Ve al link y usa cualquier depurador http (la mayoria de los navegadores traen uno incluido sino descargate uno), revisa los parametros del contenido POST que tu navegador envia e intenta duplicarlos con la peticion POST desde tu propia aplicacion. Por lo que he visto el parametro que te interesa es:

Código (xml) [Seleccionar]

f.req=["af.maf",[["af.add",######,[{"#####":[false]}]]]] <- Envia peticion OFF
f.req=["af.maf",[["af.add",######,[{"#####":[true]}]]]] <- Envia peticion ON


Saludos
#195
Cita de: brax sp en 30 Diciembre 2018, 23:45 PM
Buenas tardes, tengo una aplicación Windows Forms instalada en la PC, esta aplicación hace peticiones a un servidor web.

Lo que necesito es que esta aplicación verifique si hay una versión nueva y si es así, que se actualice.

La aplicación hace una consulta a un servicio web que le devuelve la ultima versión de dicha aplicación, si la versión es la misma no hace nada y a continuacion realiza su tarea, si hay una versión nueva descarga los archivos nuevos, respalda los actuales y luego los reemplaza por los nuevos.

¿Como puedo desarrollar el código para que el servicio web efectué la tarea que describí anteriormente?

Gracias por la ayuda que me puedan brindar.

Pues yo lo veo claro. Tu aplicacion se comunica con el web service enviandole la version actual, el web service pudiera obtener la informacion de la ultima version de tu aplicacion directamente del servidor de descarga, mediante algun fichero o una consulta a una bd, luego enviarle una respuesta a tu aplicacion que puede o no actualizar y dependiendo de esta respuesta tu aplicacion procederia a descargar los nuevos ficheros del servidor de descarga. Solo necesitas implementar este algoritmo  ;D
Suerte
#196
Desde mi punto de vista, el consejo de tu profesor de no buscar nada en internet es totalmente invalido, aconsejarle a alguien que quiere aprender algo que no busque e investigue por su cuenta sino que espere a que se lo den todo masticado y como el profesor quiere y cuando quiere...en fin...cada cual con lo suyo.
El objetivo de la normalizacion de una bd relacional es evitar la redundancia de datos y proteger la informacion, sencillo. Cuando practiques lo suficiente y/o tengas mas experiencia podras diseñar bases de datos directamente normalizadas en 2FN, 3FN o incluso FNBC dependiendo de la complejidad del problema y de tus capacidades.
Saludos y suerte
#197
Ingeniería Inversa / Re: Herramienta pink phanter
1 Diciembre 2018, 06:12 AM
#198
* Programacion Orientada a Objetos (Clases, Constructores, Herencia, Polimorfismo, Abstraccion, Interfaces, etc)
* Punteros
* STL (Algoritmos, Contenedores, Iteradores, etc)
* Namespaces
* Sobrecarga de Operadores
* Administracion de Memoria
* Templates
* Estructura de Datos
* Multithreading (Thread-Safe, Concurrencia)
* Exception Handling
* RTTI

Son algunos de los topicos que pudieras mirar dependiendo de lo que ya posees y lo que no
Saludos
#199
Programación General / Re: Comenzando programación
14 Noviembre 2018, 20:47 PM
Cita de: lKalí en  2 Noviembre 2018, 19:09 PM
¿Qué libros recomendáis?
Dependiendo del lenguaje por el que quieras empezar podrias leer uno u otro. En mi caso como alguien dijo, empece en la universidad con C++, (las bases de la programacion, del lenguaje y de la programacion orientada a objetos) usando como base el texto "Thinking in C++" de Bruce Eckel (muy recomendado)

Cita de: lKalí en  2 Noviembre 2018, 19:09 PM
¿Tenéis alguna guía de estudio?
Me refiero a por EJ : empieza estudiando tal y sigue con tal..
Como antes todo depende de tus intereses como futuro programador, si te enfocaras en programacion web (frontend o backend o fullstack), desktop, moviles, bases de datos, etc. Yo te recomendaria empezar por las bases de la programacion orientada a objetos, luego algo de estructuras de datos y bases de datos. Estos conocimientos los vas a tener que usar como programador en el mayor porciento de tus proyectos. Ya el tema del lenguaje es a gusto tuyo pero estos conceptos necesitas conocerlos como el abc

Cita de: lKalí en  2 Noviembre 2018, 19:09 PM
Empece programación con la idea igual que muchos de dedicarlo a programación de juegos, pero actualmente estoy algo indeciso y me gustaría ir por desarrollo web
pero me falta para continuar por un mejor camino la opinión de alguien que al menos ya haya pasado por esto y sepa darme una ayuda o empujón para yo tener una idea de por donde continuar.
Como dijeron antes el desarrollo web es uno de los mas comerciales ahora mismo y seria la opcion que escogeria. La cantidad de tecnologias, frameworks y lenguajes puede ser algo abrumador en este campo asi que decide de antemano el tipo de programador (frontend o backend o fullstack) y las tecnologias y lenguages con los que trabajaras, C#/ASP.NET, PHP, Ruby, Python, JSP, MySQL, MSSQL, HTML, CSS, javascript, jQuery, etc, etc, etc
El mercado para desarrollo de videojuegos es algo diferente, el numero de compañias buscando artistas y programadores de videojuegos es mucho menor que las que buscan programadores de sistemas de gestion o aplicaciones webs o moviles. Luego igual necesitas especializarte en alguna rama ya sea audio, física, inteligencia artificial, gráficos o cualquier otra área que se requiera para realizar una función de videojuego.

PD: No esperes aprender a programar solamente leyendo teoria o leyendo codigo escrito por alguien mas. Necesitas llevar ambas cosas a la par, teoria y practica. Hay muchos cursos o libros que combinan ambas cosas, te enseñan la teoria con ejemplos practicos y encima te ponen ejercicios de practica. Te recomendaria aprender la teoria, el porque de las cosas y luego aplicarlas en proyectos de la vida real, lo que se te ocurra
#200
1- Supongo que algo mas "trabajado" incluiría cualquier técnica de inter-comunicacion de procesos o IPC por sus siglas en ingles (Shared Memory, Named Pipes, File Mapping, Mailslot, Remote Procedure Calls, etc), a no ser que necesites específicamente una técnica de trabajo con ventanas y simulacion de clicks y/o pulsaciones de teclado

2- Tambien pudieras echarle un ojo a las funciones PostMessage/SendMessage y/o SendInput (Aunque no estoy seguro si funcionan sin tener en cuenta el foco)

Aqui tienes alguna lectura recomendada
https://stackoverflow.com/questions/2113950/how-to-send-keystrokes-to-a-window
https://stackoverflow.com/questions/1220820/how-do-i-send-key-strokes-to-a-window-without-having-to-activate-it-using-window
https://stackoverflow.com/questions/8782648/how-to-send-keys-to-a-minimized-window-in-c
https://cboard.cprogramming.com/windows-programming/118217-sending-keystrokes-other-*non-focus*-application.html