Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[TOOL] glsa-mail e glsa-report, notifica delle GLSA via mail
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools)
View previous topic :: View next topic  
Author Message
FonderiaDigitale
Veteran
Veteran


Joined: 06 Nov 2003
Posts: 1710
Location: Rome, Italy

PostPosted: Wed May 05, 2004 4:38 pm    Post subject: [TOOL] glsa-mail e glsa-report, notifica delle GLSA via mail Reply with quote

Probabilmente e' pure il primo software marchiato o fatto stto l'egida dei gechi :P

Questo script manda una notifica a una mail specificata quando viene rilasciata una advisory che influenza (potenzialmente) la sicurezza del sistema.

Code:

#!/bin/sh
# script to check for any Gentoo advisory and notify admins via email.
# Requires Gentoolkit
#
# to be called from cron, eg.
# * */6 * * * glsa-mail.sh
#
# Released under the GPL.
# Author Giovanni Ferri <FonderiaDigitale@gechi.it>
# Gechi web site www.gechi.it
                                                                                                                                                                                   
                                                                                                                                                                                   
# change this! :)
email="root"
                                                                                                                                                                                   
checkGLSA () {
tmpfile="/tmp/GLSA_${RANDOM}"
mailfile="/tmp/GLSA_${RANDOM}"
IFS="
"
glsa-check --nocolor --list 2>/dev/null > $tmpfile
lines=`perl -0777pe 's/^(?:.*\n){4}//' $tmpfile`
rm -f $tmpfile
year=`date +%Y`
for each in $lines; do
        GLSAn=`echo "$each"|cut -d' ' -f1`
        type=`echo "$each"|cut -d' ' -f2`
        case $type in
                        *N*)
                                if [ "$got" != 1 ]; then
                                                got=1
                                                echo "$HOSTNAME could be affected by this vulnerability:" >> $mailfile
                                                echo >> $mailfile
                                fi
                                glsa-check --dump $GLSAn 2>/dev/null >> $mailfile
                        ;;
        esac
done
}
                                                                                                                                                                                   
checkGLSA
cat $mailfile|mail $email -s 'new GLSA vulnerability found!! Check your machine.'
                                                                                                                                                                                   
if [ "$got" == 1 ]; then
        rm -f $tmpfile $mailfile
else
        exit 0
fi


Buon divertimento :)
_________________
Come disse un amico, i sistemisti sono un po' come gli artigiani per l'informatica :)


Last edited by FonderiaDigitale on Wed Oct 25, 2006 5:45 pm; edited 5 times in total
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Wed May 05, 2004 4:47 pm    Post subject: Reply with quote

Buona idea, il funzionamento e' semplice ma sicuramente si tratta di un tool che risulta utile. Lo sto utilizzando 8)
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
FonderiaDigitale
Veteran
Veteran


Joined: 06 Nov 2003
Posts: 1710
Location: Rome, Italy

PostPosted: Wed May 05, 2004 6:05 pm    Post subject: Reply with quote

Si, ed e' scritto pure male :) ma fa il suo dovere
Tanto comunque ci tornero' sopra per aggiungerci qualcosa sicuramente in futuro
_________________
Come disse un amico, i sistemisti sono un po' come gli artigiani per l'informatica :)
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Thu May 06, 2004 8:34 pm    Post subject: Reply with quote

Ma la variabile che imposti Year a cosa serve ?
E poi.. visto che nn conosco perl, cosa fa quella riga? Ad occhio e croce pare una regexp
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
randomaze
Bodhisattva
Bodhisattva


Joined: 21 Oct 2003
Posts: 9985

PostPosted: Fri May 07, 2004 9:05 am    Post subject: Reply with quote

federico wrote:
Ma la variabile che imposti Year a cosa serve ?
E poi.. visto che nn conosco perl, cosa fa quella riga? Ad occhio e croce pare una regexp


In effetti pare che non la usi dopo, cmq. non é in perl ma in shell e con quell'istruzione assegna alla variabile (year) l'output del comando "date +%Y" (in pratica mette l'anno nella variabile!)
_________________
Ciao da me!
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Fri May 07, 2004 4:48 pm    Post subject: Reply with quote

Siccome ieri sera non avevo nulla da fare ho scritto una implementazione python del tuo programma, fa la stessa cosa ma manda una mail leggermente diversa, con la descrizione del baco in attach (se ci sono X bachi manda una mail con X attach) e funziona senza il supporto di programmi mail esterni. E' possibile specificare un server smtp per l'invio della mail.

Code:

#!/usr/bin/env python

# Lo script controlla i Gentoo Advisory e notifica eventuali rischi via mail
# Richiede gentoolkit  e un programma mail funzionante da riga di comando
# glsa-mail.py puo' essere richiamato via cron, es:
# * */6 * * * glsa-mail.py
# Implementazione python di glsa-mail.sh di Giovanni Ferri <FonderiaDigitale@gechi.it>
# Rilasciato sotto licenza GPL
# Federico Galli - fede@sideralis.net - www.sideralis.net
# Riccardo Galli - riccardo@sideralis.net - www.sideralis.net

#Usage:
#glsa-check.py TO SMTP PORT
#SMTP default = localhost
#PORT default = 24

import os, sys, re
from email.MIMEBase import MIMEBase
from email.MIMEText import MIMEText
import email.Utils as Utils
import smtplib, StringIO

argc=len(sys.argv)
if not 2<=argc<=4:
    print 'Usage: addressTO [smtpserver [port]]'
    sys.exit(1)

to=sys.argv[1]
server= argc in (3,4) and sys.argv[2] or "localhost"
port=argc==4 and int(sys.argv[3]) or 25

PATTERN=re.compile(r'(?P<date>\d+-\d+)\s\[(?P<status>.)\]\s(?P<desc>.*)\(\s(?P<prog>.+)\s\)',re.MULTILINE)

soggetto="glsa-check report"
intestazione="Sono state rilevate le seguenti vulnerabilita':\n\n"

stdin,stdout,stderr=os.popen3("glsa-check --list")
text=stdout.read()
stderr=StringIO.StringIO()
stdout.close()

lista_prob=[]
lista_attachs=[]

for line in PATTERN.findall(text):
    if line[1]=='N':
        lista_prob.append(line[2])
        stdin,stdout,stderr=os.popen3('glsa-check --dump %s' % line[0])
        body=stdout.read()
        stderr=StringIO.StringIO()
        stdout.close()
        lista_attachs.append(body)

if not lista_attachs : sys.exit(0)

body=intestazione+'\n'.join(lista_prob)

import socket

msg=MIMEBase('multipart','mixed')
msg['From']="glsa-check@%s.py"% socket.gethostname() or 'sideralis.net'
msg['To']=to
msg['Date']=Utils.formatdate()
msg['Message-ID']=Utils.make_msgid()
msg['Subject']=soggetto
msg.attach(MIMEText(body))

for i in lista_attachs:
    msg.attach(MIMEText(i))

try:
    s=smtplib.SMTP(server,port)
    s.sendmail(msg['From'],msg['To'],str(msg))
    s.quit()
except smtplib.SMTPException,e:
    print e


Siccome a volte il python perde la sua indentazione nel forum, si puo' scaricare qui www.sideralis.net/download/glsa-check.py

Fede
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
FonderiaDigitale
Veteran
Veteran


Joined: 06 Nov 2003
Posts: 1710
Location: Rome, Italy

PostPosted: Sat May 08, 2004 1:39 am    Post subject: Reply with quote

fico :)

Adesso lo testo e poi ti so dire
_________________
Come disse un amico, i sistemisti sono un po' come gli artigiani per l'informatica :)
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Mon May 10, 2004 11:37 pm    Post subject: Reply with quote

Ok ho scritto una versione ottimizzata che richiama direttamente le librerie da gentoolkit e ci mette circa meta' del tempo della versione precedente:

Code:
blackman@altair blackman $ time python glsa-report.py fede@sideralis.net smtp.fastwebnet.it

real   0m1.081s
user   0m0.854s
sys   0m0.052s
blackman@altair blackman $ time python glsa-check.py fede@sideralis.net smtp.fastwebnet.it

real   0m2.158s
user   0m1.259s
sys   0m0.065s
blackman@altair blackman $     


Il che mi pare pregevole.
La versione glsa-report e' scaricabile da www.sideralis.net/download/glsa-report.py e il codice e' questo :

Code:

#!/usr/bin/env python

# Lo script controlla i Gentoo Advisory e notifica eventuali rischi via mail
# Richiede gentoolkit  e un programma mail funzionante da riga di comando
# glsa-mail.py puo' essere richiamato via cron, es:
# * */6 * * * glsa-mail.py
# Revisione python di glsa-mail.sh di Giovanni Ferri <FonderiaDigitale@gechi.it>
# Rilasciato sotto licenza GPL
# Federico Galli - fede@sideralis.net - www.sideralis.net
# Riccardo Galli - riccardo@sideralis.net - www.sideralis.net

#Usage:
#glsa-report.py TO SMTP PORT
#SMTP default = localhost
#PORT default = 25

import os, sys
from email.MIMEBase import MIMEBase
from email.MIMEText import MIMEText
import email.Utils as Utils
sys.path.insert(0, "/usr/lib/gentoolkit/pym")
from glsa import checkconfig, get_glsa_list, GlsaTypeException, Glsa, portage
import smtplib, random

argc=len(sys.argv)
if not 2<=argc<=4:
    print 'Usage: addressTO [smtpserver [port]]'
    sys.exit(1)

to=sys.argv[1]
server= argc in (3,4) and sys.argv[2] or "localhost"
port=argc==4 and int(sys.argv[3]) or 25

lista_prob=[]
lista_attachs=[]

glsaconfig = checkconfig(portage.config(clone=portage.settings))
completelist = get_glsa_list(glsaconfig["GLSA_DIR"], glsaconfig)
fileName='/tmp/tmp_blabla'+str(int(random.random()*100))

for myid in completelist:
    try:
        myglsa = Glsa(myid, glsaconfig)
    except GlsaTypeException, e:
        #print "invalid GLSA: %s (error message was: %s)" % (myid, e)
        continue
    if myglsa.isVulnerable():
        lista_prob.append(myglsa.title)
        myglsa.dump(outfile=fileName)
        fp=file(fileName)
        lista_attachs.append(fp.read())
        fp.close()
os.remove(fileName)

if not lista_attachs : sys.exit(0)

soggetto="glsa-check report"
intestazione="Sono state rilevate le seguenti vulnerabilita':\n\n"
body=intestazione+'\n'.join(lista_prob)

import socket

msg=MIMEBase('multipart','mixed')
msg['From']="glsa-check@%s.py"% socket.gethostname() or 'sideralis.net'
msg['To']=to
msg['Date']=Utils.formatdate()
msg['Message-ID']=Utils.make_msgid()
msg['Subject']=soggetto
msg.attach(MIMEText(body))

for i in lista_attachs:
    msg.attach(MIMEText(i))

try:
    s=smtplib.SMTP(server,port)
    s.sendmail(msg['From'],msg['To'],str(msg))
    s.quit()
except smtplib.SMTPException,e:
    print e


Tra le raffinatezze vi e' la creazione random di un file sotto etc (mantenere il nome fisso alza il rischio sicurezza) e ho scritto al tipo che scrive glsa-report xke' c'e' un pezzo di codice un po' schifoso (spero che implementi il bugfix)

:twisted:
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
FonderiaDigitale
Veteran
Veteran


Joined: 06 Nov 2003
Posts: 1710
Location: Rome, Italy

PostPosted: Mon May 10, 2004 11:43 pm    Post subject: Reply with quote

due note:
- alcuni sono costretti a usare un smtp server con autenticazione
- il file e' bene crearlo sotto /tmp piu che in /etc


per il resto.. notevole. e son contento che la mia idea sia servita. :)
ps. ho cambiato il topic in qualcosa di piu congeniale.
_________________
Come disse un amico, i sistemisti sono un po' come gli artigiani per l'informatica :)
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Tue May 11, 2004 12:23 pm    Post subject: Reply with quote

La tua idea e' veramente piaciuta, su questo non ci piove!
Ho mostrato ad amici l'idea e sono tutti rimasti contenti!

Per le note, il file viene scritto sotto /tmp, ho scritto forse etc da qualche parte e ora nn lo vedo?

Code:

fileName='/tmp/tmp_blabla'+str(int(random.random()*100))


E per l'smtp con autenticazione hai ragione.. sarebbe il caso di implementarlo...


Fede
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Thu May 13, 2004 2:41 pm    Post subject: Reply with quote

Fixato quello che c'era da fixare, aggiunta l'autenticazione per smtp e una buona gestione degli errori, ora direi che è a posto.

http://www.sideralis.net/download/glsa-report-1.0.tar.bz2

per chi fosse interessato a provare.
Federico
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
FonderiaDigitale
Veteran
Veteran


Joined: 06 Nov 2003
Posts: 1710
Location: Rome, Italy

PostPosted: Thu May 13, 2004 4:58 pm    Post subject: Reply with quote

ok, ti dico quello che ho rilevato da fixare:
Code:
$ ./glsa-report.py -t xxx@yyyy.it -s smtp.tin.it
{'xxx@yyyy.it': (550, 'RCPT TO:<xxx@yyyy.it> Relaying not allowed - please use SMTP AUTH')}

forse qui sarebbe da catturare l'output e rispondere con un errore standard

cambia il n. versione da 1 a 2 :)

potresti aggiungere una opzione --verbose che rilascia in stdout il contenuto di cosa trova (anche se non trova nulla). utile per chi pensa non funzioni non vedendo output.
_________________
Come disse un amico, i sistemisti sono un po' come gli artigiani per l'informatica :)
Back to top
View user's profile Send private message
solka
Apprentice
Apprentice


Joined: 25 Jun 2003
Posts: 287
Location: Torino - ITA

PostPosted: Thu May 13, 2004 5:25 pm    Post subject: Reply with quote

Ciao,
ho provato la versione di federico, ma mi dà il seguente errore:

Code:

pitagora glsa-report-1.0 # glsa-report -t solkanar@ngi.it -s smtp.fastwebnet.it
Traceback (most recent call last):
  File "/usr/bin/glsa-report", line 94, in ?
    os.remove(fileName)
OSError: [Errno 2] No such file or directory: '/tmp/tmp_glsa-report18'
pitagora glsa-report-1.0 # glsa-report -t solkanar@ngi.it -s smtp.fastwebnet.it
Traceback (most recent call last):
  File "/usr/bin/glsa-report", line 94, in ?
    os.remove(fileName)
OSError: [Errno 2] No such file or directory: '/tmp/tmp_glsa-report44'
pitagora glsa-report-1.0 # glsa-report -t solkanar@ngi.it -s smtp.fastwebnet.it
Traceback (most recent call last):
  File "/usr/bin/glsa-report", line 94, in ?
    os.remove(fileName)
OSError: [Errno 2] No such file or directory: '/tmp/tmp_glsa-report92'
pitagora glsa-report-1.0 # glsa-report -t solkanar@ngi.it -s smtp.fastwebnet.it
Traceback (most recent call last):
  File "/usr/bin/glsa-report", line 94, in ?
    os.remove(fileName)
OSError: [Errno 2] No such file or directory: '/tmp/tmp_glsa-report77'


sbaglio io qualcosa?
_________________
"The only reason of the man's sadness
is that he can't stay peacefully in his room."

Blaise Pascal
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Thu May 13, 2004 5:30 pm    Post subject: Reply with quote

[EDIT]
Per quanto riguarda l'errore del traceback, e' dovuto al fatto che non ho pensato che un sistema potesse essere esente da errori, come il tuo :) Ho sistemato questa cosa e se vuoi provare se ora funziona puoi scaricare

http://www.sideralis.net/download/glsa-report.py

e sostitirlo a quello attuale, mi sai dire come va poi?
(PS: visto che probabilmente il tuo sistema e' privo di errori, se vuoi provare a vedere cosa fa il programma puoi editare la riga 88
if myglsa.isVulnerable():
trasformandola in
if not myglsa.isVulnerable():
in questo modo dovrebbe arrivarti una mail contenente tutti i glsa corretti ;)
)

Sappimi dire!
[/EDIT]

Okey, per quanto riguarda gli errori del server smtp ci avevo fatto caso ma avevo fatto finta di non vedere, preparo qualcosa del tipo "il server ha detto BLABLA, probabilmente si e' verificato un errore nell'invio della mail"

Inoltre aggiungo un po' di verbosaggio :)

Oltre queste due cose che mi fai notare ho notato -uno se ne accorge sempre dopo- un paio di sottigliezze nel codice che potevo ottimizzare, sistemo quanto prima possibile :twisted:

Grazie infinite per il supporto !
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Thu May 13, 2004 11:06 pm    Post subject: Reply with quote

Allora allora allora...

http://www.sideralis.net/download/glsa-report-1.1.tar.bz2

Lavorando a tutto questo il programma si e' un po' ingrossato, spero di non aver lasciato pezzi in giro.

- aggiunto il verbose
- aggiunta una buona gestione degli errori

Fede
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
FonderiaDigitale
Veteran
Veteran


Joined: 06 Nov 2003
Posts: 1710
Location: Rome, Italy

PostPosted: Thu May 13, 2004 11:32 pm    Post subject: Reply with quote

[editato!]

siccome usare degli avvisi di sicurezza senza controllare la veridicita' della fonte NON e' bello, conviene anche controllare se chi ha firmato le GLSA e' effettivamente chi dice di essere.
allora conviene importare le chiavi pubbliche di tutti gli sviluppatori gentoo: per fare questo - una tantum - basta eseguire questo snippet:
Code:
for a in `lynx -dump http://www.gentoo.org/proj/en/devrel/roll-call/userinfo.xml|grep 0x`; do
    i=`expr match "$a" '.*\(0x........\).*'`
    case $i in
        0x????????) gpg --keyserver hkp://subkeys.pgp.net -q --search-keys "$i";;
    esac
done

lascio a te (federico) l'onere di convertirlo in python, se credi, e di aggiungere una opzione al programma tipo --importgentookeys (visto che io, in python, faccio ancora abbastanza pena :))

vedi se ti sembra utile (la fase di importing delle chiavi DEVE essere lasciata manuale... e' bene controlla cosa si importa).
_________________
Come disse un amico, i sistemisti sono un po' come gli artigiani per l'informatica :)
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Thu May 13, 2004 11:55 pm    Post subject: Reply with quote

[edit!]
mi hai editato lo script sotto gli occhi :) ora lo riprovo
[/edit]
[edit 2]
Keys 1-1 of 1 for "0xA314EE7E"
(1) Arne Mejlholm (Aaby) <aaby@gentoo.org>
1024 bit DSA key A314EE7E, created 2004-01-14
Enter number(s), N)ext, or Q)uit >

Mi spieghi anche questo che significa?
[/edit 2]
Ho visto ora il post, dopo il wkend ci lavoro un po' ma... essenzialmente non ho capito :)
Ho capito che e' bene controllare che le firme di gpg siano corrette e non corrotte :lol: e se capisco bene (sono una sega in gpg) la procedura sarebbe leggere la pagina dove sono listati gli sviluppatori attivi, leggerne le firme, controllare se matchano con quelle del secondo server (che immagino sia un server dove sono depositate le chiavi)

Ma.. se non matchano verosimilmente la pagina sul sito gentoo e' stata corrotta, o sbaglio? Quindi nel caso non matchassero potrebbero esserci delle informazioni non corrette sul sito di gentoo, giusto?

Non so se ho capito bene...
Ma te lo sei scritto tu quello snippet? Mi rendo conto di essere schiappissimo in bash scripting :)
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Fri May 14, 2004 12:30 am    Post subject: Reply with quote

No spe..
leggiamo le chiavi dalla pagina di gentoo, troviamo i corrispettivi su quel server e poi aggiungiamo le voci [se ce n'e' + di uno prenderei quelli delle mail@gentoo.org] al nostro gpg ottenendo qualcosa tipo questo

ackman@altair blackman $ gpg --list-keys
/home/blackman/.gnupg/pubring.gpg
---------------------------------
pub 1024D/98B1EECD 2003-03-01 Abhishek Amit <abhishek@gentoo.org>
uid Abhishek Amit <andrd@gentoo.org>
uid Abhishek Amit <abhishekamit2000@yahoo.com>
uid Abhishek Amit (Personal) <abhishek@aamit.com>
sub 1024g/6FCEB5FC 2003-03-01


... giusto?
Ma non mi pareva che glsa-check controllasse le chiavi gpg se presenti...
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
solka
Apprentice
Apprentice


Joined: 25 Jun 2003
Posts: 287
Location: Torino - ITA

PostPosted: Fri May 14, 2004 8:59 pm    Post subject: Reply with quote

federico wrote:
[EDIT]
Per quanto riguarda l'errore del traceback, e' dovuto al fatto che non ho pensato che un sistema potesse essere esente da errori, come il tuo :) Ho sistemato questa cosa e se vuoi provare se ora funziona puoi scaricare

http://www.sideralis.net/download/glsa-report.py

e sostitirlo a quello attuale, mi sai dire come va poi?
(PS: visto che probabilmente il tuo sistema e' privo di errori, se vuoi provare a vedere cosa fa il programma puoi editare la riga 88
if myglsa.isVulnerable():
trasformandola in
if not myglsa.isVulnerable():
in questo modo dovrebbe arrivarti una mail contenente tutti i glsa corretti ;)
)

Sappimi dire!
[/EDIT]


Ciao,
non ho provato l'ultima versione aggiornata, ma cmq con questa modifica funziona perfettamente :) Cambiando quella linea arrivano tutti i glsa corretti :)

saluti
_________________
"The only reason of the man's sadness
is that he can't stay peacefully in his room."

Blaise Pascal
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Mon May 17, 2004 10:55 am    Post subject: Reply with quote

Sicuramente allora ti funzionerà anche l'ultima versione, col funzionamento normale. Il tuo errore è stato un buon bug report, in pratica nella gestione del tutto viene creato un file temporaneo che viene cancellato a ciclo esecutivo finito. Il punto era che viene cancellato sempre ma viene creato solo se ci sono bug glsa, che tu non avevi :)

Fede
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
HexDEF6
Guru
Guru


Joined: 26 May 2003
Posts: 451
Location: Trento

PostPosted: Mon May 17, 2004 12:57 pm    Post subject: Reply with quote

Ho un piccolo problema con lo script:
il mio server smtp (server gentoo con qmail e qmail-scanner) mi manda questa mail:
Code:

Attention: glsa-check@HexDEF6.py


A problem was found in an Email message you sent.
This Email scanner intercepted it and stopped the entire message
reaching its destination.

The problem was reported to be:

Illegal breakage found in header name - potential virus


Please contact your I.T support personnel with any queries regarding this
policy.


leggendo in giro ho letto che potrebbe succedere una cosa del genere se il body di una mail non inizia con una linea a capo...

Qualcun altro con questo problema?

Ciao!
_________________
Fa quel che te faresi!
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Mon May 17, 2004 1:23 pm    Post subject: Reply with quote

Dunque, probabilmente si trattava di una sbagliata implementazione da parte nostra dell'rfc 2822, prova a modificare la linea 135 con

Code:

body=intestazione+'\r\n'.join(lista_prob)+'\r\n'


Dovrebbe risolvere l'errore che giustamente riportava il tuo qmail.

[edit]
www.sideralis.net/download/glsa-report.py
e' il codice aggiornato con questa modifica.
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
HexDEF6
Guru
Guru


Joined: 26 May 2003
Posts: 451
Location: Trento

PostPosted: Tue May 18, 2004 12:54 pm    Post subject: Reply with quote

federico wrote:
Dunque, probabilmente si trattava di una sbagliata
Dovrebbe risolvere l'errore che giustamente riportava il tuo qmail.

www.sideralis.net/download/glsa-report.py
e' il codice aggiornato con questa modifica.


niente da fare... a me da ancora lo stesso errore :(
potrebbe essere il mio server che ha problemi? (tutte le altre mail che ricevo funzionano senza problemi)

Ciao!

edit:
se lo lancio dalla stessa macchina dove gira il server smtp, va tutto bene... se lo lancio dal mio desktop mi da l'errore :?: :?: :?:
_________________
Fa quel che te faresi!
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Tue May 18, 2004 4:33 pm    Post subject: Reply with quote

Hai modo di farmi vedere che mail arriva al server quando questo la rifiuta?

Io ho controllato, dovrebbe essere assolutamente rfc la mail che viene creata ma la ricontrollo daccapo.. certo che il tuo server e' proprio schizzinoso :lol:

Se riesci a mostrarmi la mail che ti rifiuta sarebbe proprio ottimo.
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
HexDEF6
Guru
Guru


Joined: 26 May 2003
Posts: 451
Location: Trento

PostPosted: Tue May 18, 2004 6:21 pm    Post subject: Reply with quote

qui:
http://supahlooza.homelinux.org/mail.tar.gz
trovi le 2 mail, quella che mi ha spedito (ho eseguito lo script sul mio server dove c'e' il server smtp con questa riga: ./glsa-report.py -t mio_indirizzo@supahlooza.homelinux.org ) e quella rifiutata ( ho eseguito lo script sul mio desktop lanciandolo così: ./glsa-report.py -t mio_indirizzo@supahlooza.homelinux.org -s 192.168.0.254 dove 192.168.0.254 e' il mio server )

Ciao!
_________________
Fa quel che te faresi!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools) All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum