La prima vedere am vazut asta :
int Bank::loadbank(const char *bankdirname){ DIR *dir=opendir(bankdirname); clearbank(); if (dir==NULL) return(-1); if (dirname!=NULL) delete(dirname); dirname=new char[strlen(bankdirname)+1]; snprintf(dirname,strlen(bankdirname)+1,"%s",bankdirname); ^^^^^^^ we have a dirname :-). ( fara sa se faca in prealabil o verificare a tipului de caractere ). [...] Bank::~Bank(){ if (dirname!=NULL) { sprintf(config.cfg.currentBankDir,dirname); ^^^^^^^^^^^^^^ format string vulnerability The exploit is pretty straightforward. ( the %n madness !!! :-) ). DK P.s. ext3 filesystem iti accepta si caractere de tipul 0xbf, 0xff, etc.. in numele directorului, sa poti sa te joci pe stiva cu ele. Despre alte filesystemuri nu cunosc. Totul e sa se evite caracterul "/". --- Paul Paul <[EMAIL PROTECTED]> wrote: > Salut. > Sunt Paul si am scris un program de sinteza pentru > Linux (si Windows) (lucrez la el din martie 2002). > Acum cateva zile am lansat un prerelease la > versiunea > 2.0.0. > Programul se gaseste la: > http://zynaddsubfx.sourceforge.net > si este sub licenta GNU GPL 2. > Are o lunga lista de facilitati pe care nu o sa o > scriu aici (se poate citi de pe homepage). > Sper sa va placa. > Paul > > > > __________________________________ > Do you Yahoo!? > Vote for the stars of Yahoo!'s next ad campaign! > http://advision.webevents.yahoo.com/yahoo/votelifeengine/ > > > --- > Detalii despre listele noastre de mail: > http://www.lug.ro/ > > > __________________________________ Do you Yahoo!? Vote for the stars of Yahoo!'s next ad campaign! http://advision.webevents.yahoo.com/yahoo/votelifeengine/ --- Detalii despre listele noastre de mail: http://www.lug.ro/