Visualizza post

Questa sezione ti permette di visualizzare tutti i post inviati da questo utente. N.B: puoi vedere solo i post relativi alle aree dove hai l'accesso.


Post - Z80Fan

Pagine: 1 2 [3] 4 5 ... 84
31
Ot(ot) -> .:(@_@):. / Re:Wonderland (reloaded)
« il: 21 Gennaio 2018, 21:12:49 »
Secondo me non è ancora tempo di pubblicizzare il forum; per lo meno dovresti aspettare finchè non hai un dominio.

Riguardo al messaggio minatorio: secondo te l'autore ha veramente analizzato il sito e stia parlando con cognizione di causa? :D
Siamo al livello di "tu puzzi e il tuo sito puzza! gne gne!".

32
Mentre con javascript .... di cosucce ne ho fatte, tutta colpa del sito (oh, tra parentesi ... provate un po' a cliccare due volte su questo bottone e notate cosa risponde ...  :o :o :o )

Se clicco una volta mi mostra l'indirizzo IPv4 *del forum, se clicco la seconda volta mi mostra il mio indirizzo IPv6 (eh già, sono IPv6 enabled io 8)).
E' il comportamento corretto?

Se parti da zero in entrambi i casi, vai di Python. Curva d'apprendimento più leggera, linguaggio docile e mansueto, utile non solo per fare software grossi ma puoi riciclarlo anche per fare script di sistema, per gestire build, codice, dati, log, ecc...
Insomma è comodo in generale, se lo impari poi inizierai ad usarlo tutti i giorni per farci qualsiasi cosa, anche number crunching volendo.

Ovviamente concordo pienamente! ;D

(* edit)

33
Che alternative a phpBB ci sono in giro (non mi dite vBulletin che e' un altro formaggio svizzero di buchi e ci ho dovuto lavorar sopra in passato per skinning - convoluto complicato e pure a pagamento :6 )

Se vuoi rimanere su PHP, devo dire che Simple Machine Forum (che usiamo proprio su questo forum qui) non è malissimo (dal punto di vista delle funzionalità; di sicurezza non so ma per pregiudizio di sistemi fatti in PHP non mi fido :D).

se avessi piu' tempo potrei provare a scrivere con node.js un oggetto "sito"; tutti (tra cui Amazon, FacciaLibro, GitHub ed altri big) usano node.js per fare diverse cose; oggi va di moda cosi'  :o :o :o

Che vada di moda non vuol dire che sia buono. :D Javascript nel backend è solo leggermente meglio di PHP sulla scala del Caccometro.

se dovessimo estendere il concetto ... Madame a cena prima ha detto "mi sa che il solo sito sicuro e' quello con la paginetta statica HTML scritta a mano, e tenuta su una una macchina che non ha alcun altro servizio abilitato":o :o :o :o

Il sito sicuro non esiste. :D

Menzione speciale per: http://motherfuckingwebsite.com/

34
Questi tag qui sopra, combinati assieme, consentono di scrivere una tabella elementare

Alla fine è come in HTML liscio, e a mio avviso non ci sono metodi più "puliti" per fare una tabella...

pero' c'e' un problema: ogni ritorno a capo PESA nella resa finale come una linea in piu'!

Intendi che vengono renderizzati nella pagina e ti sballano la tabella? Probabilmente il CSS predefinito ha un valore per white-space particolare; questa pagina ha un riassunto dei valori e del comportamento:

https://css-tricks.com/almanac/properties/w/whitespace/

Forse il forum usa un pre o un pre-wrap. Prova a dare un'occhiata e giocare un po' col valore. Altrimenti il problema potrebbe essere questo:

https://css-tricks.com/fighting-the-space-between-inline-block-elements/

Quello che è certo è che in HTML+CSS le tabelle sono sempre un casino. :D

35
si, me ne sono accorto: RaionFox o chi per lui, deve averlo scoperto e sicuramente
l'ha utilizzato per devastare il codice del sito, oltre che per devastare il database

Visto che non ci sono prove, evitiamo di dare la colpa a persone precise; per quel che ne sappiamo, potrebbero essere stati dei bot cinesi che scansionavano internet alla ricerca di vulnerabilità di apache/phpbb/ftp/mysql etc.

pero' non mi e' chiaro come facesse a sapere del codice per poter utilizzare pusher.php
ovvero di [ magicsmoke ], visto che non l'ho mai scritto da nessuna parte ne nel sito
ne altrove (nemmeno qui)  :o :o :o

questa cosa non so spiegarla

Sapere (come l'hanno scoperto) è solo relativamente utile: un punto cardine della sicurezza è sempre assumere che il tuo avversario ha accesso a tutto il codice sorgente corrente della tua applicazione; se anche avendo questa conoscenza è impossibile (o incredibilmente difficile) trovare o sfruttare una vulnerabilità, allora il codice è sicuro.

Codice: [Seleziona]
[js]get_hostname[/js]
[button=click to see your ip/hostname]get_hostname[/button] [id]hostname[/id]

lo script e' contenuto in
chunks_of/javascript/get_hostname.js

[ js ] pesca solo da chunks_of/javascript/
dove tutto ha permessi di sola lettura!

Non ho ben capito cosa sarebbe quel BB code; è qualcosa che un utente può scrivere in un post, e il forum engine ingloba nella pagina lo script JS (che hai scritto tu e memorizzato sul server)?
In tal caso, il fatto che sul server i file JS abbiano permessi di sola lettura non serve a nulla: quel codice non girerà mai nel server.
In qualsiasi caso non sono per niente d'accordo con lasciare la possibilità agli utenti anche solo di richiamare funzioni, che a quanto pare può essere in un ordine arbitrario; non sai mai quale strano ordine di operazioni può causarti una vulnerabilità, e per ogni funzione JS che aggiungi, dovresti testare ogni possibile combinazione e sequenza di chiamate per garantire che nessuna combinazione può causarti danni; puoi immaginare che grande esponente abbia il numero di combinazioni! :o

Se vuoi aggiungere delle funzionalità è meglio che crei dei tag BB apposta (ad esempio [ hostname ]), e li espandi nel codice PHP al valore corretto (ne più ne meno di come funziona per il tag Grassetto o Corsivo), possibilmente una volta sola durante il salvataggio del post, avendo ESTREMA cura di validare tutti i valori di input (per evitare cose come il fopen discusso prima); il forum sarà certamente molto meno "dinamico" (niente bottone da premere per mostrare l'hostname), però sarà certamente più sicuro. :D

36
Quello è codice per node.js, ovvero un environment Javascript che tipicamente viene usato per fare backend di webapp; di sicuro non lo fai girare nel browser. :D

37
i log dicono che ha provato a fare i suoi giochini alla console, ma questa volta non ha protuto farci nulla: attachment disattivati, html code injection disattivato, script blindai e totalmente nuovi, ben diversi da quanto messo a corredo dall'originale progetto PHP.

Sono curioso di capire cosa stava cercando di fare... puoi spiegare un po' cosa hai trovato nei log? :D

38
(questa pero', a mio avviso, e' una GaGata di chi ha progettato phpbb!)

CVD. :D

E' quasi sicuramente il metodo che è stato usato: mi sembrava troppo elaborato entrare con un buco di apache o di altri servizi, ed era molto più probabile che fosse stato usato un buco di phpBB (che di buchi ne ha più dell'emmenthal).

Dai log di apache non si riesce a vedere proprio niente dell'exploit? Se me li mandi per mail ci do un occhio io. :D

39
Ot(ot) -> .:(@_@):. / Re:respect
« il: 10 Gennaio 2018, 00:00:38 »
Magari ha solo tirato a indovinare :D
Oppure può darsi che sia una falla/mal configurazione di Apache che ti permette di avere indietro il file raw...
E' possibile che si riesca ad accederci attraverso l'FTP?

40
Questo thread me l'ero proprio perso, ops :-X

41
Ot(ot) -> .:(@_@):. / Re:respect
« il: 09 Gennaio 2018, 23:24:09 »
Io mi sto trovando bene, lo trovo abbastanza veloce per quello che devo farci... l'ho preso quando facevano un po' di sconti, cmq in rete si trovano svariati coupon per ottenere riduzioni di prezzo.

Dopo la brutta esperienza di cloudatcost, ormai diffido da qualsiasi provider ti prometta vps a meno di 5$/mese... :-\ Al massimo se devo usarlo per i fatti miei, ma non per hostare un sito pubblico.

@Z80Fan
E' un piacere "rivederti" :P

Sono sempre stato qua. :P Semplicemente mi capita di leggere in tarda serata e non ho le forze  per rispondere...

Pero' non capisco una faccenda: non ho mai detto a nessuno ne indicato sul sito quale fosse il tag per iniettare HTML-code, e questa e' una faccenda che si smazza il modulo di editing, ovvero se non sai che tag usare, viene gestito come se fosse mero testo senza alcuna azione semantica!

E' possibile che abbia semplicemente risposto al tuo post usando la funzione "citazione", che quindi porta nella risposta tutto il BBcode del messaggio?

E ancor aprima arrivano a saturare le code del firewall con una fortissima attivita' di port scanning che allerta snort per tutta una serie di pacchetti TCP/IP corrotti, anomali, e maliziosi inviati da decine e decine di server che ci prendono di mira ad ogni ora del giorno inietando pattern pattume, e, contemporaneamente analizzando le risposte dalle porte abilitate dei servizi che reagiscono alle schifezze iniettate

Attento che non sia la solita merda che passa per Internet (guardacaso arriva tutta dalla China...). Pure in CFG una volta ci erano entrati dentro (mi avevano infilato una riga in fondo a index.php che redirectava a siti di pubblicità), entrando dall'FTP; non serve dire che quello è stato il primo servizio che abbiamo tuonato (e non lo uso mai, preferendo SCP o SFTP, da non confondere con FTPS)

servizi che non possiamo mica chiudere perche' ci servono per lavoro!

Ma il server su cui gira il forum lo usate anche per cose di lavoro?

piu' una falla grossa come un portone chiamata "spectre", che a quanto pare hanno sfruttato per sfondare PHP-mod attraverso l'HTML code injection

Credo sia estremamente improbabile che abbiano usato spectre/meltdown per violare il server.


Comunque il mio consiglio rimane di togliere il forum attuale e installarne uno nuovo su un VPS (o sposta le cose di lavoro su un altro server, visto che ormai l'indirizzo IP è preso di mira dagli spammer), con una distro aggiornata (far girare software vecchio è la peggior vuonerabilità), magari attendi fino ad Aprile quando esce Ubuntu 18.04 LTS. Come server web usa nginx, lighttpd o altro ma non Apache, visto che essendo il più diffuso è anche quello più mirato dai tool automatici che girano per la rete (e vengono sviluppati più velocemente gli exploit), e spegni tutti i servizi eccetto HTTP spostando SSH su una porta non standard (e se puoi limita il login solo al tuo IP di casa). Poi ti fai uno scriptino che fai girare con cron che ti fa il backup del DB e te lo invia per email o te lo spara su qualche account di cloud hosting (Google Drive ha delle API per l'upload per esempio), e finalmente puoi dormire sonni tranquilli. :D

42
Ot(ot) -> .:(@_@):. / Re:respect
« il: 07 Gennaio 2018, 19:15:49 »
PHP è un merdone quando si cerca di fare qualcosa di minimamente sicuro; aggiunto a MySQL che a mio avviso è uno dei peggiori RDBMS*, rendere sicuro un sito PHP+MySQL è un'impresa titanica. A questo si aggiunge il fatto che phpBB non è proprio il campione di sicurezza.

E' quindi facile introdurre per sbaglio delle vulnerabilità anche gravi: basta dimenticarsi di fare un escape su un parametro di una query e bam hai aperto la porta al mondo.

Ricordo che la prima versione di commodorefangazette.com era fatta in PHP, e cercando di seguire tutte le best practices e controllando i parametri uno a uno veniva fuori uno schifo di codice che non finiva più. Quando ho rifatto il sito in Python(web.py) + PostgreSQL, avrò praticamente scritto 1/3 del codice, in quanto psycopg2 (la libreria per connettersi a Postgre) già di suo convertiva i parametri alla query evitando possibili injection, e il motore di template faceva escape dell'HTML così era impossibile, di default, avere delle vulnerabilità XSS.

Se devi ripartire da capo, ti consiglio di lasciar perdere phpBB e passare a qualche altra soluzione; se vuoi rimanere su PHP+MySQL c'è Simple Machines Forum (che è quello che usiamo qui su NSA), altrimenti in passato ho provato nodeBB (che come indica il nome gira sopra node.js), altrimenti ci sono FlaskBB e Misago che sono in Python.

Installalo su un VPS fornito da un provider attendibile e che ha una protezione contro i DoS (come Digitalocean o Linode), fai un filo di hardening, ovvero rimuovi TUTTI i servizi eccetto HTTP/HTTPS, e cambia la porta SSH a qualche altro valore non standard (o togli SSH del tutto e usa la console del provider per fare manutenzione, o fai uno script che ti avvia SSH e dopo tot tempo te lo disattiva nuovamente).

P.S.:

a pro po, che danni puo' fare JavaScritp per HTML code injection?
In wonderland e' tecnicamente possibile infilare script di quel tipo
in qualsaisi post!

Potendo inserire codice javascript arbitrario in un post, hai inserito una vulnerabilità che si chiama Cross-Site Scripting (XSS).
Se dovessi fare io un exploit, sarei partito dal provare a catturare il tuo cookie di sessione, iniettando un codice JS che legge il cookie locale e in qualche modo me lo trasmette ad esempio facendo una chiamata a un qualche endpoint HTTP su un server di mio possesso. In questo modo, quando tu (amministratore) visiti la pagina con il codice iniettato, il tuo cookie di sessione viene inviato a me e lo posso usare per "loggarmi" con il tuo utente (in realtà non passi per il codice di login perchè phpBB riceve già il cookie valido e ti lascia passare). A questo punto sono dentro come amministratore (di phpBB) e provo a vedere se c'è qualcosa che posso usare per rompere ulteriormente, o sfruttare una vulnerabilità di qualche funzione di amministrazione per inviare comandi alla shell di Linux.

Se non riesco a prenderti il cookie (perchè magari è impostato Http Only), posso sempre farti eseguire codice mio però nel tuo contesto, quindi posso eseguire qualsiasi call GET/POST in un contesto da amministratore; l'unica scomodità è che devo pensare alla sequenza di azioni in anticipo per codificarle tutte nel codice che vado ad iniettare, ma posso sempre usare questa tecnica per crearmi un mio utente amministratore che poi posso usare come descritto sopra.
Questa tecnica è circa un Cross-Site Request Forgery, con la differenza che grazie al XSS posso fare le chiamate direttamente dal tuo sito, bypassando limitazioni date dalla same-origin policy (tutte tecniche che comunque credo phpBB non abbia).



* almeno è meglio di Microsoft SQL Server, ma è come dire che perdere solo una gamba è meglio di perdere entrambe le gambe.

43
Altri Hobby & Passioni / Re:HGui, ce l'ho fatta :D
« il: 13 Novembre 2017, 22:32:35 »
Il controllo della versione mi manca veramente tanto ed è fondamentale per un colosso del genere :P

Yep! Ormai qualsiasi cosa sulla quale ci lavoro per più di 10 minuti la metto sotto git, anche perchè creare un nuovo repository è un singolo comando (e per Windows ci sono delle estensioni di explorer che ti permettono di fare tutto tramite il menù contestuale della cartella!).

Anche se il codice non lascerà mai il mio hard disk, il fatto di avere una storia di modifiche è incredibilmente utile sia per recuperare il codice rimosso (e così eviti di avere il sorgente pieno di funzioni commentate perchè "non si sa mai se mi servirà ancora"), sia ho notato che dà un certo "ritmo" allo sviluppo (sviluppo, commit, sviluppo, commit...) che è un chiaro indicatore di progresso.

44
Altri Hobby & Passioni / Re:HGui, ce l'ho fatta :D
« il: 13 Novembre 2017, 20:14:56 »
Bellissimo! Complimenti! :D

Sicuro di non voler usare una piattaforma tipo GitHub per distribuire i sorgenti? Così avresti il controllo di versione (tramite git), hai uno spazio per eventualmente scrivere una wiki, e in qualsiasi caso gli utenti possono scaricare uno zip con tutti i file nel caso non vogliano/possano usare git (Inoltre c'è uno spazio apposta dove elenchi le varie release della libreria, con possibilità di scrivere una piccola descrizione, esempio).

45
Fintanto che è Personale ed è un Computer, può avere la forma che vuoi! ;D

Pagine: 1 2 [3] 4 5 ... 84