Steganography rafitra fisie

Aho Habr.

Te-hanolotra tetikasa kely momba ny steganography, natao tamin'ny fotoana malalaka tamin'ny fianarana.

Nanao tetikasa momba ny fitehirizana fampahalalana miafina ao amin'ny rafitra fichier aho (fanampiny Π€Π‘).
Ity dia azo ampiasaina hangalarana fampahalalana tsiambaratelo ho an'ny tanjona fanabeazana.

Steganography rafitra fisie

Linux FS efa tranainy dia nofinidy ho prototype ext2.

fanatanterahana

Hevitra momba ny fampiharana

Raha tsara ny "mamaha" ny fenitra ext2 dia azonao soloina fa ao amin'ny FS dia misy ilay antsoina hoe Superblocks, izay manome fampahalalana fototra momba ny rafitra. Rehefa hita aho Block Bitmap ΠΈ Inode Table. Saika avy hatrany dia teraka ny hevitra momba ny fandraketana ny vaovao amin'ny sakana FS foana. Ankehitriny dia mendrika ny mieritreritra momba ny fiarovana amin'ny programmer mitam-piadiana hex editor.

Raha mitahiry vaovao miafina tsy misy encryption ianao, dia, na dia eo aza ny fanjavozavozany ao amin'ny FS, dia mbola ho mibaribary loatra izany, indrindra raha fantatry ny programer izay tokony hotadiavina. Noho izany, nanapa-kevitra ny hanafenana ireo sakana rehetra amin'ny rakitra loharano. Nisafidy block cipher aho AES, fa araka ny azonao dia tsy zava-dehibe izany.

Mba hanavahana ireo sakana ilaina amin'ny hafa rehetra rehefa mamaky, dia nanapa-kevitra ny hametraka marika manokana ho an'ny sakana tsirairay eo am-piandohan'ny sakana. Ity mari-pamantarana ity dia nafenina arakaraka ny laharan'ny sakana ao amin'ny rakitra loharano. Io fika io avy hatrany dia tsy vitan'ny hoe nahita ireo sakana ilaina, fa koa mba hamantatra ny filaharany marina.

Fitsipika fiasana ankapoben'ny rafitra.

Steganography rafitra fisie

Algorithm firaketana

Ireto:

  • Soraty aloha ny fampahalalana sasany amin'ny rafi-drakitra loharano;
  • Fafao ity fampahalalana ity (tsy voatery izy rehetra);
  • Ny rakitra hafenina dia zaraina ho blocs mitovy halavany, manampy marika;
  • Ampidiro ireto sakana ireto;
  • Apetraho ao anaty sakana FS foana ny sakana voafefy.

Ho an'ireo tia block diagram

Ity ambany ity ny kisary sakana amin'ny algorithm firaketana. Ny algorithm dia mahazo rakitra efatra ho fampidirana:
-Sarin'ny rafitra fichier azo ovaina;
- Ny antontan-taratasy manaraka ny steganography;
- File misy fanalahidin'ny encryption ho an'ny AES;
-Fisiana misy marika.
Steganography rafitra fisie

Tsara ny manamarika avy hatrany fa ity algorithm ity dia manana lesoka iray: aorian'ny fanoratana ny rakitra amin'ny FS, tsy afaka Manorata zava-baovao ao amin'ny FS, satria mety hiafara any amin'ireo sakana natokana ho an'ny rakitra zip-tsika ny fampahalalana vaovao rehetra, na dia izany aza dia manokatra ny fahafahana "manarona haingana ny dianay."

Saingy mazava ho azy ny fomba hanamboarana izany: ilaina ny mamerina manoratra ny algorithm amin'ny fanoratana bloc ao amin'ny FS. Asa azo takarina izany, nefa tena mandany fotoana.
Ho Proof Of Consept dia tsy nampihatra izany aho.

Vokatr'izany, ireto fanovana manaraka ireto dia hatao amin'ny FS; toy izao ny endriky ny FS alohan'ny steganography (rakitra audio efa voarakitra taloha).
Steganography rafitra fisie
Ary toy izao ny endrik'ilay FS miaraka amin'ny fampahalalana efa navoaka.
Steganography rafitra fisie

Algorithm famakiana

Ireto:

  • Miaraka amin'ny fahalalana ny fanalahidy sy ny fomba fanamboarana marika, mamorona ny marika N voalohany, miaraka amin'ny antoka fa ny N ampitomboina amin'ny halavan'ny rafitra fichier dia lehibe noho ny halavan'ny rakitra steganographed;
  • Mitadiava sakana ao amin'ny FS manomboka amin'ny marika;
  • Esory ireo sakana voaray ary saraho ny marika;
  • Angony amin'ny filaharana marina ireo sakana vokarina ary alao ny rakitra loharano.

Ho an'ireo tia block diagram

Ity ambany ity ny kisary sakana amin'ny algorithm firaketana. Ny algorithm dia mahazo rakitra telo ho fampidirana:
- Sary rafitra fisie;
- File misy fanalahidin'ny encryption ho an'ny AES;
-Fisiana misy marika.
Steganography rafitra fisie

Rehefa mandeha ny programa dia miseho ny rakitra Read, izay ilay rakitra nalaina tao amin'ny rafitra fichier steganographed; raha diso ny famaritana ny lakile na marika, dia ho foana ny rakitra Read.
(ho an'ireo tia hatsaran-tarehy, tsy ny rakitra ihany no azonao ampidirina, fa ny "header" misy meta-information: anaran'ny rakitra, zo, fotoana novaina farany, sns.)

Startup automation

Ho an'ny fanamorana, ny script bash dia nosoratana mba hanamarihana ny fandefasana amin'ny Linux (voasedra ao amin'ny Ubuntu 16.04.3 LTS).
Andeha hojerentsika ny fanombohana tsikelikely.
Firaketana:

  1. sudo Copy_Flash.sh "DEVICE" - alao ny sary FS avy amin'ny DEVICE (flash);
  2. ./Write.sh β€œFILE” β€œKEY” β€œMARKER” – mamorona tontolo virtoaly, misintona ireo tranomboky ilaina ary tanteraho ny script fanoratana;
  3. sudo ./Write_Flash.sh "DEVICE" - soraty indray ny FS niova ho DEVICE.

Famakiana:

  1. sudo Copy_Flash.sh "DEVICE" - alao ny sary FS avy amin'ny DEVICE (flash);
  2. ./Read.sh "KEY" 'MARKER' - mamorona tontolo virtoaly, misintona ireo tranomboky ilaina ary mandehana ny skipt amin'ny famakiana;
  3. Ao amin'ny lahatahiry amin'izao fotoana izao, sokafy ny rakitra Vakio - ity no fampahalalana voafafa.

famaranana

Ity fomba steganography ity dia mety mila fanatsarana, fitsapana fanampiny ary fanitarana ny rafitra rakitra malaza kokoa, toy ny fat32, NTFS ΠΈ ext4.
Saingy ny tanjon'ity asa ity dia ny hampiseho ny fitsipika izay ahafahana manatanteraka fitahirizana miafina ao amin'ny rafitra fichier.
Miaraka amin'ny fanampian'ny algorithm toy izany dia afaka mitahiry fampahalalana tsy misy tahotra ianao, ary raha fantatrao ny lakile, dia azo atao ny mijirika rafitra toy izany tsy amin'ny hery mahery vaika (fa amin'ny algorithm lava be), dia tsy mahafantatra ny fanalahidy, ity. Ny system amiko dia toa milamina tanteraka, na izany aza, mety ho anton'ny lahatsoratra misaraka izany.

Ny kaody rehetra dia ampiharina amin'ny Python version 3.5.2. Ohatra amin'ny asa aseho amin'ny fantsona youtube-ko. Ny kaody feno amin'ny tetikasa dia navoaka amin'ny github.
(Eny, eny, fantatro fa ho an'ny dikan-teny famokarana dia mila manoratra amin'ny zavatra "faingana", ohatra C πŸ˜‰)
Amin'ity fampiharana ity, ny haben'ny rakitra fampidirana ho an'ny steganography dia tsy tokony hihoatra ny 1000 kB.

Te haneho ny fankasitrahako ny mpampiasa aho PavelMSTU ho an'ny torohevitra sarobidy amin'ny fanomanana ny fandalinana sy ny tolo-kevitra momba ny famolavolana ny lahatsoratra.

Source: www.habr.com

Add a comment