elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


  Mostrar Temas
Páginas: [1] 2 3 4 5 6 7 8
1  Foros Generales / Foro Libre / La caída de windows es un ciberataque. en: 20 Julio 2024, 10:47 am
Buenas a todos.

En los últimos días hemos visto en televisión que Windows ha colapsado a nivel mundial por una actualización no compatible del programa de ciberseguridad CrowdStrike. Al parecer, dicha actualización ha provocado un pantallazo azul en todos los clientes de la empresa CrowdStrike teniendo como consecuencia el colapso de aeropuertos, bancos y otros empresas.

En mi opinión, una actualización no compatible no provoca un fallo grave en el sistema operativo y mucho menos de manera general y simultánea en todos los clientes. Por poner algunos ejemplos pensemos en que ocurre cuando metes un juego de PlayStation en una Xbox...lo que ocurre es que te da un mensaje de error por compatibilidad ("El formato del disco no es compatible con XBOX") y nada más, ó pensemos en que ocurre cuando intentas ejecutar un programa compatible con Mac de Apple en un Windows...ocurre lo mismo...un mensajito de error al usuario y ya está. Los errores de compatibilidad no provocan nunca la caída del sistema operativo, por tanto dudo mucho que esto haya sido un simple error por un tema de compatibilidad en una actualización.

¿Por que pienso que es un ciberataque? La respuesta es sencilla. La posibilidad de un error por parte de los programadores de la  empresa CrowdStrike para mi es nula, porque todo el mundo compila y ejecuta un programa cien mil veces antes de crear la versión final del programa. Por tanto si compilas y ejecutas y esto provoca el pantallazo azul del sistema operativo...nadie va a mandar esa actualización a sus clientes...porque tu mismo te has dado cuenta de que toda ejecución del provoca el colapso del sistema operativo....y si no toda ejecución no provoca el colapso del sistema operativo...entonces no puede colapsar a todos tus clientes de manera simultanea como hemos visto en las noticias que ha ocurrido.

Por tanto si la hipótesis de un error de programación queda descartada...Lo unico que nos queda pensar es que es un ciberataque motivo por el cual el colapso ha sido general y simultaneo. Al fin y al cabo...cuando un sistema operativo colapsa lo hace para un usuario concreto y nunca de manera general y mucho menos por un programa....Por tanto es obligatorio entender los hechos como un ciberataque y la duda para mi esta en si CrowdStrike es culpable o inocente. Es decir, ó CrwodStrike es una empresas fantasma  que tenía como propósito provocar el ciberataque consigiendo clientes para luego darles el golpe...ó bien CrowdStrike es inocente porque ha sido victima de un ciberataque...los atacantes han tomado el control de la empresa y luego han usado su servicio de actualizaciones para enviar una actualización fraudulenta a todos sus clientes provocando el colapso de sus sistemas.

Otro motivo para entender los hechos como un ciberataque es que debemos tener en cuenta que la OTAN y Rusia estan en conflicto y la OTAN lanzo un ciberataque a sistemas informaticos rusos hace un tiempo provocando un colapso general de manera muy similar a lo que acaba de ocurrir y por tanto podríamos tener a Rusia como un sospechoso proncipal.

Recordemos que un programa nunca provoca el colapso del sistema operativo en todas sus ejecuciones...sólo lo provoca en 1/1.000.000 y a veces ni eso....por tanto un fallo general y simultaneo en todos los clientes de un programa nunca puede ser interpretado como un fallo de programación de un programa...

Y ustedes...¿Que piensenan?¿Estaís de acuerdo conmigo?
Un saludo.

2  Programación / Programación C/C++ / crear archivo con variable de entorno c++ windows en: 19 Noviembre 2023, 12:05 pm
Buenas a todos.

Querria saber como crear un archivo en una carpeta referenciada mediante variable de entorno (o variable del sistema) programando en c o c++ para windows.

Seria algo asi pero con codigo: crearArchivo("nombre archivo","%rutaCarpetaEntorno%/subdirectorio");

¿Sabéis lo que digo?

Gracias, un saludo.

3  Programación / Programación C/C++ / programar ventana guardar como. en: 27 Octubre 2023, 08:27 am
Buenas, me gustaría saber como llamar o programar en (c o c++) la ventana "guardar como" y la ventana de "cargar archivo". ¿Sabeís cuales digo?. Es que se como leer y escribir en un archivo pero no sé como ofrecer al usuario la ventana del sistema operativo para "Cargar archivos" y para "Guardar archivos".

¿Alguien sabe algo de esto? Si puedes dar una respuesta para varios OS y varios lenguajes mejor.

Muschas gracias, un saludo



Bueno, despues de mucho buscar he encontrado algo...En esta pagina explican como se hace lo de mostrar la ventana de cargar archivos...pero es en visual basic y para windows xp o windows 98....o sea que es bastante antigua......

Os dejo el enlce....: http://www.recursosvisualbasic.com.ar/rvb/htm/trucos-codigofuente-visual-basic/508-buscar-archivos-y-paginar.htm

Este otro enlace habla del tema que he propuesto pero un poco mas general...: http://www.recursosvisualbasic.com.ar/rvb/

Aun asi...yo busco una respuesta para c y c++ o incluso c# y para versiones del sistema operativo mas modeno...(windows 10, ios y linux)
4  Programación / Desarrollo Web / Imprimir HTML en: 28 Octubre 2016, 19:08 pm
¡ Buenas a todos !

He hecho una web con una base de datos para hacer facturas y al imprimir las facturas desde el navegador se imprimen mal...La pagina se ve bien, en la vista previa de Chrome se ve bien pero cuando imprime la impresora algunos campos salen vacios o cortados....

Ademas...esos campos que salen vacios o cortados a veces salen bien y a veces salen mal....

El caso es que si en vez de imprimir lo guardo como PDF e imprimo el PDF entoces sale bien, pero si le doy a imprimir el HTML salen algunos campos vacios o cortados...

¿ Alguna idea de porque ocurre esto ?

Gracias, un saludo.


5  Programación / Bases de Datos / Prpblema con transaccion auto_increment en: 11 Septiembre 2016, 14:55 pm
¡ Buenas a todos !

Tengo un problema con los IDs del auto_increment. Creo que el fallo esta en el ROLLBACK, y es que no tengo claro si en una transaccion donde se hacen 4 inserts, ¿si falla  el ultimo insert y hago un ROLLBACK se cancelan los 4 inserts o solo el ultimo?

Por cierto el inicio de la transaccion lo hago con STAR TRANSACTION.

Muchas gracias por las respuestas, un saludo.
6  Programación / PHP / Problema Query PHP MYSQL en: 9 Septiembre 2016, 19:58 pm
¡ Buenas a todos !

Tengo un problema con esta funcion.
Código
  1. function mod002_getIdOrdenReparacion($imeiEntrada){
  2. $db =  mov001_conectaBD ();
  3.  
  4. $strSQL  = "select * from informes ";
  5. $strSQL .= "inner join clientes on informes.idCliente = clientes.idCliente ";
  6. $strSQL .= "inner join dispositivos on informes.idDispositivo = dispositivos.idDispositivo ";
  7. $strSQL .= "where informes.tipoInforme = 'Órden de Reparación' ";
  8. $strSQL .= "and dispositivos.imeiEntrada = '1234567890' ";
  9.  
  10.  
  11.  
  12. $objRS = mysqli_query( $db, $strSQL ) or die ( $strSQL );
  13.  
  14. if ( $row = mysqli_fetch_array( $objRS ) ) {
  15. $array_retorno = $row;
  16.  
  17. }
  18. else {
  19. $array_retorno = -1;
  20. }
  21. mov001_desconectoBD ( $db );
  22. return $array_retorno;
  23. }
  24.  

La query funciona en el phpmyadmin y la conexion a la base de datos tambien porque en otras funciones si que funciona.... ¿Por que me retorna siempre -1?
Gracias, un saludo.
7  Programación / Bases de Datos / Duda consulta SQL en: 1 Junio 2016, 13:11 pm
¡ Buenas a todos !

Tengo un problema con una consulta SQL.
Tampoco sabia muy bien en que parte del foro debia iniciar este tema...por eso lo pongo en dudas generales.

El problema es el siguiente: Tengo 2 tablas con una relacion reflexiva (usuario<->usuarioAmigos). La tabla usuario(idUsuario, nombre) y la tabla usuarioAmigos (idUsuario, idAmigo). Tengo que hacer una consulta que me muestre las siguientes columnas (idUsuario, nombreUsuario, idAmigo, nombreAmigo).

El problema lo tengo con los datos de la columna nombreAmigo...idUsario, nombreUsuario y idAmigo los saco correctamente, pero en la columna nombreAmigo me saca los datos de la columna nombreUsuario....

Llevo 2 dias con este ejercicio y no soy capaz de sacarlo...Esto es lo que tengo hecho:
Código
  1. SELECT usuario.idusuario, usuario.nombreapellidos, usuarioamigos.idamigo, usuario.nombreapellidos FROM usuario
  2. INNER JOIN usuarioamigos ON usuario.idusuario=usuarioamigos.idusuario
  3. WHERE usuario.nombreapellidos IN(
  4. SELECT usuario.nombreapellidos FROM usuario
  5. INNER JOIN usuarioamigos ON usuario.idusuario=usuarioamigos.idamigo
  6. )
  7. ORDER BY usuario.idusuario
  8.  

La salida de la consula es esta:
Citar

idusuario    nombreUsuario   idamigo   nombreAmigo   

1             nombreapellidos1  2              nombreapellidos1
1             nombreapellidos1  3              nombreapellidos1
1             nombreapellidos1  5              nombreapellidos1
1             nombreapellidos1  6              nombreapellidos1
2             nombreapellidos2  1              nombreapellidos2
2             nombreapellidos2  3              nombreapellidos2
2             nombreapellidos2  4              nombreapellidos2


¿Alguien sabe como hacer un alias o algo parecido en la columna nombre del amigo para que la distinga de la columna nombre del usuario?

Muchas gracias, un saludo.
8  Programación / Programación C/C++ / Pasar parametro a procedimiento en: 20 Octubre 2015, 12:02 pm
¡Buenas a todos!

¿Porque esto no imprime un 5 en la salida?

Código
  1. #include <stdio.h>
  2.  
  3. void funcion1(int numero1){
  4.   numero1=5;
  5. }
  6.  
  7. int main(){
  8.   int numero1=0;
  9.   funcion1(numero1);
  10.   printf("%d\n",numero1);
  11.   return 0;
  12.  
  13. }

Se que esto se podria hacer muy bien con una funcion...pero es que esto lo quiero hacer con un procedimiento mas grande y no se porque esto no funciona...¿como lo deberia escribir para que funcionase usando un void?

¿alguna idea?

gracias.
9  Programación / Programación C/C++ / Problemas con printf(); en: 19 Octubre 2015, 04:36 am
¡Buenas a todos!

Estoy haciendo un pequeño "compilador". Lo que debe hacer es traducir de mi lenguaje a lenguaje C para linux. El caso es que al cargar las palabras en un arrayList de char* lo carga bien dentro de la funcion cargaListaPalabras(codigoTraductor,listaPalabras); e imprime correctamente las palabras de listaPalabras, pero cuando  intento imprimir las palabras de listaPalabras fuera de cargaListaPalabras(); no imprime nada....

Este es el codigo de cargaListaPalabras que funciona correctamente:
Código
  1. void cargaListaPalabras(char* codigo,char* listaPalabras[]){
  2.  
  3.  char palabra[100]="";
  4.  int posPalab=0;
  5.  int posCodigo=0;
  6.  int posListaPalabras=0;
  7.  
  8.  
  9.  printf("codigo: %s\n",codigo);
  10.  
  11.  while(posCodigo<strlen(codigo)){
  12.    while( ((esLetra(codigo[posCodigo])>0) || (esNumero(codigo[posCodigo])>0)) && (codigo[posCodigo]!='\0')){
  13.      //lee letras y numeros hasta formar una palabra
  14.      palabra[posPalab]=codigo[posCodigo];
  15.      posPalab++;
  16.      posCodigo++;
  17.    }
  18.    palabra[posPalab]='\0';                                    //finaliza la palabra
  19.    listaPalabras[posListaPalabras]=palabra;        //guarda palabra en listaPalabra
  20.    printf("%s\n",listaPalabras[posListaPalabras]);   //imprime bien
  21.    posListaPalabras++;
  22.    posPalab=0;
  23.  
  24.    while( (esLetra(codigo[posCodigo])==0) && (codigo[posCodigo]!='\0') ){
  25.      //lee caracteres (comillas, puntos, coma) para guardarlos como una palabra individualmente
  26.      palabra[posPalab]=codigo[posCodigo];
  27.      palabra[posPalab+1]='\0';
  28.      posCodigo++;
  29.      posPalab=0;
  30.      listaPalabras[posListaPalabras]=palabra;   //guarda el caracter en listaPalabras
  31.      printf("%s\n",listaPalabras[posListaPalabras]);   //imprime bien
  32.      posListaPalabras++;
  33.    }
  34.  
  35.  }
  36.  listaPalabras[posListaPalabras]="@fin@";  //palabra de fin de codigo.
  37.  printf("%s\n",listaPalabras[posListaPalabras]);   //imprime bien
  38. }
  39.  

Los printf() de la funcion anterior imprimen el codigo correctamente. Pero cuando en la funcion main() escribo lo siguiente y no funciona el printf() y saca un salto de linea por palabra...

Código
  1.   char* listaPalabras[1000000];
  2.   int posListaPalabras=0;  
  3.  
  4.  cargaListaPalabras(codigoTraductor,listaPalabras);
  5.  
  6.  while(strcmp(listaPalabras[posListaPalabras],"@fin@")!=0){
  7.  
  8.    printf("%s\n",listaPalabras[posListaPalabras]);   //imprime mal....
  9.    posListaPalabras++;
  10.  
  11.  }
  12.  

¿porque el printf() del bucle while() no me imprime lo mismo que los printf() de la funcion cargaListaPalabras()?

Gracias por las respuestas.
10  Programación / Programación C/C++ / return array char en C en: 29 Septiembre 2015, 02:58 am
Buenas a todos!

Tengo problemas para declarar una funcion que retorna un array de caracters.

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. const int maxCharPalab=100;
  6. typedef char palabra[maxCharPalab];
  7.  
  8. const int maxCharInstruc=1000;
  9. typedef char instruccion[maxCharInstruc];
  10.  
  11. palabra leePalabras(instruccion instruc){
  12.  
  13.     palabra palab;
  14.  
  15.    //codigo...
  16.  
  17.    retrurn palab;
  18.  
  19. }
  20.  
  21.  

¿como debo declarar la funcion para que funcione correctamente con arrays?


Gracias, un saludo.
Páginas: [1] 2 3 4 5 6 7 8
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines