Torna indietro   Hardware Upgrade Forum > Software > Linux, Unix, OS alternativi

Intervista a Stop Killing Games: distruggere videogiochi è come bruciare la musica di Mozart
Intervista a Stop Killing Games: distruggere videogiochi è come bruciare la musica di Mozart
Mentre Ubisoft vorrebbe chiedere agli utenti, all'occorrenza, di distruggere perfino le copie fisiche dei propri giochi, il movimento Stop Killing Games si sta battendo per preservare quella che l'Unione Europea ha già riconosciuto come una forma d'arte. Abbiamo avuto modo di parlare con Daniel Ondruska, portavoce dell'Iniziativa Europa volta a preservare la conservazione dei videogiochi
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione
Abbiamo provato il nuovo Galaxy S25 Edge, uno smartphone unico per il suo spessore di soli 5,8 mm e un peso super piuma. Parliamo di un device che ha pro e contro, ma sicuramente si differenzia dalla massa per la sua portabilità, ma non senza qualche compromesso. Ecco la nostra prova completa.
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto
Pensato per il professionista sempre in movimento, HP Elitebook Ultra G1i 14 abbina una piattaforma Intel Core Ultra 7 ad una costruzione robusta, riuscendo a mantenere un peso contenuto e una facile trasportabilità. Ottime prestazioni per gli ambiti di produttività personale con un'autonomia lontano dalla presa di corrente che permette di lavorare per tutta la giornata
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-06-2005, 13:48   #1
NA01
Senior Member
 
L'Avatar di NA01
 
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
[iptables]identificazione processi

è possibile identificare i processi che richiedono l'accesso alla rete sulle catene di output?
per loggare qualcosa del tipo

il processo XX ha stabilito una connessione alle ZZ

ciao!
NA01 è offline   Rispondi citando il messaggio o parte di esso
Old 13-06-2005, 14:07   #2
NA01
Senior Member
 
L'Avatar di NA01
 
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
ho trovato il modulo owner che mi dà la possibilità di creare regole secondo il pid o l'owner.

però così posso bloccare processi che già conosco, io invece vorrei poter intercettare il tentativo di uscita e poterlo elaborare ancora prima che venga decisa la sua sorte

ciao!
NA01 è offline   Rispondi citando il messaggio o parte di esso
Old 13-06-2005, 14:16   #3
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
...ovvero?
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 13-06-2005, 14:27   #4
NA01
Senior Member
 
L'Avatar di NA01
 
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
mmmmh che brutta domanda, ora chiami l'ambulanza e mi fai sbattere in manicomio
però speravo risponedessi

allora:
supponiamo che io mi metta a lanciare ping.
ho le catene di output su -J DROP.
il mio sogno sarebbe appena il primo pacchetto cerca di uscire su OUTPUT venga spedito a un mio demone i dati relativi al processo che ha generato il pacchetto.

questo dovrebbe essere fattibile, vero?

il problema è che ora il mio bel pacchetto dovrebbe aspettare la risposta del demonuccio prima di uscire.
non so se si può fare...
ma per il momento lasciamo stare questa parte.

diciamo che per il momento mi limito a volere i dati sul processo che lo ha generato.
invece di mandarli a syslog o chi per lui dovrebbe spedirli al mio demone.

si può fare?
non ti chiedo la spiegazione di come si possa fare (suppongo non sia la cosa più veloce da spiegare), mi basterebbe qualche dritta....


grazie, ciao!
NA01 è offline   Rispondi citando il messaggio o parte di esso
Old 13-06-2005, 14:50   #5
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
-j QUEUE
Puoi scrivere quindi il tuo bel programmino userspace che fa ciò che vuole con i pacchetti rigirati dal kernel, tramite le libipq:
http://www.google.it/search?hl=it&ie...nG=Cerca&meta=
oppure tramite i vari bind di questa libreria, come in Perl:
http://michael.toren.net/slides/ipqueue/slide005.html

Se invece ti interessa solo un log particolare, differente da syslog, usa -j ULOG.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12

Ultima modifica di ilsensine : 13-06-2005 alle 14:52.
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 13-06-2005, 15:16   #6
NA01
Senior Member
 
L'Avatar di NA01
 
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
sei mitico come al solito!!!

però ho un problemino...
una volta presi i dati con ipq_get_packet se non sbaglio mi trovo con questa struttura

Codice:
typedef struct ipq_packet_msg {
    unsigned long packet_id; /* ID of queued packet */
    unsigned long mark; /* Netfilter mark value */
    long timestamp_sec; /* Packet arrival time (seconds) */
    long timestamp_usec; /* Packet arrvial time (+useconds) */
    unsigned int hook; /* Netfilter hook we rode in on */
    char indev_name[IFNAMSIZ]; /* Name of incoming interface */
    char outdev_name[IFNAMSIZ]; /* Name of outgoing interface */
    unsigned short hw_protocol; /* Hardware protocol (network order) */
    unsigned short hw_type; /* Hardware type */
    unsigned char hw_addrlen; /* Hardware address length */
    unsigned char hw_addr[8]; /* Hardware address */
    size_t data_len; /* Length of packet data */
    unsigned char payload[0]; /* Optional packet data */
} ipq_packet_msg_t;
e qui sono senza il mio bel pid
ci sono altri modi per andarselo a prendere?

grazie di nuovo, ciao!
NA01 è offline   Rispondi citando il messaggio o parte di esso
Old 13-06-2005, 16:22   #7
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Ah interessante
C'è una procedura indiretta (ma altamente inefficace) per i datagrammi tcp; forse c'è un modo più semplice, puoi provare a chiedere sulle loro ml.
C'è sempre l'alternativa di modificare i sorgenti di iptables, ovviamente
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 13-06-2005, 16:56   #8
NA01
Senior Member
 
L'Avatar di NA01
 
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676

i sorgenti di iptables li lascerei stare lì come sono

ora vorrei solo un parere sull'idea prima di combinare troppi casini per nulla.

quello che vorrei realizzare è un firewall dinamico nello stile di quelli per windows.
prendi tutte le -m state NEW (la sintassi forse è sbagliata, ma credo che si capisca) e chiedi se accettarne l'uscita o l'entrata.
di conseguenza poi fai passare anche le related.
l'autenticazione dell'applicazione la lascerei con un md5 sull'eseguibile (metterlo anche sulle librerie sarebbe più sicuro, ma credo che diventi troppo pesante).

pensavo di strutturarlo con un demone che possa essere controllato solo da un gruppo di utenti (che ovviamente permetta di bloccare a un utente solo le sue uscite/entrate) e un client per utente che funzioni da interfaccia grafica.

ovviamente ha un senso solo su un desktop, ma aiutrebbe a prevenire problemi con applicazioni burlone che non fanno quello per cui si spacciano.
senza contare l'enorme facilità di configurazione (sarò stupido, ma arrivando da ZA ci ho messo quasi una settimana a capire come funzionava iptables).

che ne dici? varrebbe la pena di perderci un pò di tempo o è totalmente inutile/infattibile?

per ora sulla difficoltà sono ottimista, sull'utilità... bhò! attendo pareri

ciao!
NA01 è offline   Rispondi citando il messaggio o parte di esso
Old 13-06-2005, 17:43   #9
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quote:
Originariamente inviato da NA01

i sorgenti di iptables li lascerei stare lì come sono
Dai, è facile

Quote:
quello che vorrei realizzare è un firewall dinamico nello stile di quelli per windows
.
che è pericolosissimo, a meno che non fai qualcosa tipo:
Quote:
l'autenticazione dell'applicazione la lascerei con un md5 sull'eseguibile
Buona idea, però...
Quote:
(metterlo anche sulle librerie sarebbe più sicuro, ma credo che diventi troppo pesante).
Bravo, così un LD_PRELOAD ti frega.

Quote:
che ne dici? varrebbe la pena di perderci un pò di tempo o è totalmente inutile/infattibile?
L'idea non è balzana e suppongo che qualcosa esista già, ma esce dal mio ambito.
Dovresti discuterne sulle mailing list di netfilter.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 13-06-2005, 17:52   #10
NA01
Senior Member
 
L'Avatar di NA01
 
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
Quote:
Originariamente inviato da ilsensine
L'idea non è balzana e suppongo che qualcosa esista già, ma esce dal mio ambito.
Dovresti discuterne sulle mailing list di netfilter.
si, qualcosa esiste già per bsd se ben ricordo nella versione grafica si chiama xsystrace.
il porting per linux esiste, ma passa per una patch al kernel.
pessima cosa per ciò che è fatto per semplificare la vita.

Quote:
Bravo, così un LD_PRELOAD ti frega.
mmmhh...
me la devo pensare meglio

se trovo una soluzione un salto su netfilter lo faccio, chissà che non esca qualcosa...

grazie di nuovo dell'attenzione!

ciao
NA01 è offline   Rispondi citando il messaggio o parte di esso
Old 13-06-2005, 20:09   #11
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Comunque ti do uno spunto che, almeno personalmente, potresti provare. Devi applicare un paio di patch al kernel (rigorosamente non testate in esecuzione):

La prima è alquanto dubbia, ma per quello che devi fare potrebbe andar bene. E' una modifica al layer socket che consente di tenere traccia del pid del creatore di un socket:
Codice:
--- linux-2.6.11.4/net/socket.c.org	2005-06-13 20:51:53.000000000 +0200
+++ linux-2.6.11.4/net/socket.c	2005-06-13 20:39:11.000000000 +0200
@@ -404,6 +404,7 @@
 		file->f_mode = FMODE_READ | FMODE_WRITE;
 		file->f_flags = O_RDWR;
 		file->f_pos = 0;
+		file->f_owner.pid = get_current()->pid;
 		fd_install(fd, file);
 	}
La seconda è una patch al modulo ip_queue. Invece di inserire un campo pid nella struct ipq_packet_msg (sarebbe l'ideale, ma ti obbligherebbe a ricompilare anche iptables), "riciclo" il campo timestamp_usec per metterci dentro il pid:
Codice:
--- linux-2.6.11.4/net/ipv4/netfilter/ip_queue.c.org	2005-06-13 20:56:37.000000000 +0200
+++ linux-2.6.11.4/net/ipv4/netfilter/ip_queue.c	2005-06-13 20:56:28.000000000 +0200
@@ -234,7 +234,9 @@
 	pmsg->packet_id       = (unsigned long )entry;
 	pmsg->data_len        = data_len;
 	pmsg->timestamp_sec   = entry->skb->stamp.tv_sec;
-	pmsg->timestamp_usec  = entry->skb->stamp.tv_usec;
+//	pmsg->timestamp_usec  = entry->skb->stamp.tv_usec;
+	pmsg->timestamp_usec  = entry->skb->sk->sk_socket->file ? 
+		entry->skb->sk->sk_socket->file->f_owner.pid : 0;
 	pmsg->mark            = entry->skb->nfmark;
 	pmsg->hook            = entry->info->hook;
 	pmsg->hw_protocol     = entry->skb->protocol;
Ho verificato che, almeno nella catena OUTPUT della tabella nat (quella che ti interessa, per i programmi locali), il risultato è corretto per un programma a singolo thread. Non ti consiglio di usare QUEUE per le altre catene; te lo sconsiglio vivamente per le catene di ingresso, qualsiasi esse siano (non ho verificato la patch su queste; se ti va bene, il campo ->file è nullo e non succede altro; se ti va male, c'è una "remota" possibilità di kernel oops )

Quote:
mmmhh...
me la devo pensare meglio
Apri /proc/<pid>/maps, prendi i file indicati nei segmenti marcati "x" (eseguibile), e ne fai l'md5sum. I path sono assoluti, LD_PRELOAD è fregato.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12

Ultima modifica di ilsensine : 13-06-2005 alle 20:11.
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 13-06-2005, 20:16   #12
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quote:
Originariamente inviato da NA01
il porting per linux esiste, ma passa per una patch al kernel.
Hai un link a questa patch?
Quote:
pessima cosa per ciò che è fatto per semplificare la vita.
Hai il coltello dalla parte dei sorgenti, USALI diamine!
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 13-06-2005, 21:02   #13
NA01
Senior Member
 
L'Avatar di NA01
 
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
Quote:
Originariamente inviato da ilsensine
Apri /proc/<pid>/maps, prendi i file indicati nei segmenti marcati "x" (eseguibile), e ne fai l'md5sum. I path sono assoluti, LD_PRELOAD è fregato.
si, questo pomeriggio ci ho fatto qualche prova, mi era passato per la testa di leggere man proc e è stato molto istruttivo
la mia paura è che diventi un mattone a rilanciare gli md5 tutte le volte che apro il client di posta o firefox.

domani dopo l'esame (per cui avrei dovuto studiare oggi pomeriggio invece di girare per proc a fare cose a caso ) provo a fare qualcosa.

per le catene in ingresso dovrebbe bastare chiedere l'autorizzazione nel momento in cui viene aperta una porta in ascolto. non so se si può fare (intendo intercettare ll'apertura della porta).
sto rileggendo di corsa gapil e nel frattempo guarderò sui sorgenti di netstat per cercare di farlo senza toccare niente (sempre che sia possibile, altrimenti si vagherò verso altre strade ).

la patch in versione 2.6 è qui:
http://www.citi.umich.edu/u/provos/s....6.1-v1.5.diff
qui in versione 2.4
http://www.citi.umich.edu/u/provos/s...4.24-v1.5.diff

comunque data la relase del kernel il port non sembra essere mantenuto.
dopo netstat lo guarderò (sperando di esserne all'altezza, il kernel lo ho toccato un paio di volte sui moduli di iptables e basta).

sei sempre mitico!!!
ciao!

Ultima modifica di NA01 : 13-06-2005 alle 21:13.
NA01 è offline   Rispondi citando il messaggio o parte di esso
Old 13-06-2005, 21:23   #14
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quote:
Originariamente inviato da NA01
si, questo pomeriggio ci ho fatto qualche prova, mi era passato per la la patch in versione 2.6 è qui:
http://www.citi.umich.edu/u/provos/s....6.1-v1.5.diff
Stanne lontano. La mia patch è un hack a rischio di esplosione, ma almeno l'ho detto da subito
In quel link c'è almeno una race e alcune imprecisioni. E un semaforo bloccato dentro uno spinlock (un errore serio).
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2005, 08:26   #15
NA01
Senior Member
 
L'Avatar di NA01
 
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
Quote:
Originariamente inviato da ilsensine
Stanne lontano. La mia patch è un hack a rischio di esplosione, ma almeno l'ho detto da subito
In quel link c'è almeno una race e alcune imprecisioni. E un semaforo bloccato dentro uno spinlock (un errore serio).
ok!
ho quasi rifinito gapil, tra un paio di giorni torno alla carica

Quote:
Stanne lontano. La mia patch è un hack a rischio di esplosione, ma almeno l'ho detto da subito
In quel link c'è almeno una race e alcune imprecisioni. E un semaforo bloccato dentro uno spinlock (un errore serio).
una curiosità, come diavolo fai a passarti il codice così velocemente? mi umili terribilmente
nel frattempo spero di aver trovato una soluzione al problema delle catene di input. nel caso ti posto la patch, spero di avere un tuo parere
ti sto usando tantissimo, se spacco i gioielli di famiglia lasciami stare

ciao!
NA01 è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2005, 10:04   #16
gurutech
Senior Member
 
L'Avatar di gurutech
 
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
Quote:
da qui
OWNER match v1.2.8-20030601 options:
[!] --uid-owner userid Match local uid
[!] --gid-owner groupid Match local gid
[!] --pid-owner processid Match local pid
[!] --sid-owner sessionid Match local sid
[!] --cmd-owner name Match local command name
non puoi semplicemente usare il cmd-owner ?
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella”
gurutech è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2005, 11:56   #17
_YTS_
Senior Member
 
L'Avatar di _YTS_
 
Iscritto dal: Oct 2003
Città: La Spezia
Messaggi: 962
bel thread, sono interessato anche io, resto sintonizzato.

byez
__________________

Gigabyte ga-p55-ud6 | Intel i7 860 | 2x2gb Corsair xms3 | Adaptec 2410sa | raid1 barracuda 500gb 7200.12 | Intel x25-m 80gb G2 | ATI radeon 4890 | tutto in downclock (non ho parenti all'enel)
_YTS_ è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2005, 12:05   #18
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quote:
Originariamente inviato da gurutech
non puoi semplicemente usare il cmd-owner ?
Credo volesse fare qualcosa di più complesso: prendere il pid di un processo che stava tentando una nuova connessione, e verificare runtime che il processo era "autorizzato" (controllando un hash dell'eseguibile e delle sue librerie).
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2005, 18:36   #19
NA01
Senior Member
 
L'Avatar di NA01
 
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
Quote:
Originariamente inviato da ilsensine
Credo volesse fare qualcosa di più complesso: prendere il pid di un processo che stava tentando una nuova connessione, e verificare runtime che il processo era "autorizzato" (controllando un hash dell'eseguibile e delle sue librerie).
si, l'idea è questa.

il modulo lo vorrei utilizzare, ma con il pid per far passare su queque solo le new.
in questo modo eviterei ulteriore carico al sistema.
il processo chiede l'accesso alla rete e se è accettato metto in cima alla catena di filtraggio --pid-owner con accept.
l'ultimo elemento della catena deve rimanere queque, e il resto tutto droppato.

ho iniziato ora a fare qualche prova per vedere come funziona il tutto. vi tengo informati!

ciao!


PS: forse era meglio studiare per l'esame che guardare queste cose... ne avevo nettamente bisogno
NA01 è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2005, 19:42   #20
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quote:
Originariamente inviato da NA01
il processo chiede l'accesso alla rete e se è accettato metto in cima alla catena di filtraggio --pid-owner con accept.
...e quando il processo termina, chi pulisce?
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Intervista a Stop Killing Games: distruggere videogiochi è come bruciare la musica di Mozart Intervista a Stop Killing Games: distruggere vid...
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione Samsung Galaxy S25 Edge: il top di gamma ultraso...
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto HP Elitebook Ultra G1i 14 è il notebook c...
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso Microsoft Surface Pro 12 è il 2 in 1 pi&u...
Recensione REDMAGIC Astra Gaming Tablet: che spettacolo di tablet! Recensione REDMAGIC Astra Gaming Tablet: che spe...
Galaxy S25 Ultra 512GB sotto i 1.000€ su...
Vi piace l'iPhone nero? Su Amazon sono s...
MacBook Air M4 16GB/256GB e 16GB/512GB s...
4 portatili per risparmiare tanto ed ess...
San Marino multa TikTok: non controllano...
Dreame e Roborock in saldo su Amazon: ro...
Pazzesco su Amazon: crollano i prezzi de...
La Corea del Sud vorrebbe costruire una ...
Rilasciati i primi risultati delle anali...
Robot umanoidi low cost? Unitree ci prov...
Non solo Rocket Lab, anche Avio potrebbe...
Chips Act UE: 41,5 milioni di euro a Eph...
Ryzen Threadripper 9000 al debutto il 31...
Nuovi coupon nascosti Amazon (aggiorname...
Chatbot e salute mentale: nascono i prim...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 08:34.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v