XOOX. Cilvēks. ([info]xoox) rakstīja [info]koderi kopienā,
@ 2006-05-29 12:09:00

Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Kādam no cienītajiem kolēģiem ir idejas, kā nomainīt string jeb virkni jau nokompilētā EXE failā? Virkne ir garāka nekā jau esošā. EXE failā virkni atrast var, mēģināju nomainīt uz garāko, bet programma pēc tam vairs nedarbojas. Jāmeklē checksumma? Bet kur?
Nu jā, un virkne nav kā daļa no resursiem (resource string), tā parādās tikai kā pliks teksts EXE, līdz ar to API funkcijas UpdateResource u.c. neder.
Googles tante ātru risinājumu nepiedāvā, bet mēģināt iebraukt PE formāta jaukumos par maz laika.


(Lasīt komentārus) - (Ierakstīt jaunu komentāru)


[info]ergaster
2006-05-29 12:47 (saite)
...tas ir - ja nekādi nav iespējams saīsināt jauno tekstu (varbūt tomēr var, ko?).

(Atbildēt uz šo) (Iepriekšējais) (Diskusija)


[info]xoox
2006-05-29 12:58 (saite)
Paldies par atbildi. Lieta tāda, ka mani hosteri nomainījuši FTP servera login vārdu, kas aplikācijā ielikts kā konstante, līdz ar to nojaucot update procesu kādām 40 aplikācijām visā LV. Mainīt atsakās. Pamēģināju pahakot ar HEX editoru, bet nu izskatās, ka nesanāks, līdz ko baits par daudz, tā EXE vairs netiek atpazīta, nojūk visas VersionInfo utml.

Vēl viens quick and dirty variants bija updeitot HOSTS failu uz klienta datora ar norādi uz citu FTP serveri, kuram login parametri ir vecie, bet izrādās ka arī šis variants neder, ja ir proxy serveris, firewall bla bla bla.

Vēl jau ir iespēja laist kādu papildprocesu, kas palaižas kopā ar pamatprogrammu un atmiņā maina to nelaimīgo konstanti. Vai tas ir iespējams, nezinu. Kaut ko miglaini atceros, ka Win2K un WinXP katrs process palaidās savā adresu telpā.

(Atbildēt uz šo) (Iepriekšējais) (Diskusija)


[info]ergaster
2006-05-29 13:12 (saite)
Tad atliek rakstīt pakešu filtru, kurš zvejo attiecīgās FTP paketes un tās pāradresē... Nekad neko tādu neesmu darījis, brrrr... :/

(Atbildēt uz šo) (Iepriekšējais)


(Lasīt komentārus) -

Neesi iežurnalējies. Iežurnalēties?