I-steganography yesistimu yefayela

Sawubona, Habr.

Ngingathanda ukukwethula iphrojekthi encane kuyo i-steganography, eyenziwe ngesikhathi sami sokuphumula ekutadisheni.

Ngenze iphrojekthi ekugcinweni okufihliwe kolwazi ohlelweni lwefayela (okunye FS).
Lokhu kungasetshenziswa ukweba ulwazi oluyimfihlo ngezinjongo zemfundo.

I-steganography yesistimu yefayela

I-Linux FS endala kakhulu yakhethwa njenge-prototype ext2.

Ukuqaliswa

Imibono Yokusebenzisa

Uma kuhle "ukuqaqa" izinga le-ext2, ungafaka esikhundleni sokuthi ku-FS kukhona okuthiwa Ama-Superblocks, ehlinzeka ngolwazi oluyisisekelo mayelana nesistimu. Ngemva kokutholwa Vimba i-Bitmap и Inode Table. Cishe ngokushesha, kwavela umqondo wokurekhoda imininingwane kumabhulokhi e-FS angenalutho okwamanje. Manje bekufanele sicabange ngokuvikelwa kumklami ohlomile umhleli we-hex.

Uma ugcina imininingwane efihliwe ngaphandle kokubethela, khona-ke, naphezu kokufiphala kwayo ku-FS, kusazobonakala kakhulu, ikakhulukazi uma umklami azi ukuthi yini okufanele ayibheke. Ngakho-ke, kunqunywe ukuthi kubethele wonke amabhlogo wefayela elingumthombo. Ngikhethe i-block cipher I-AES, kodwa njengoba uqonda, lokhu akubalulekile.

Ukuhlukanisa amabhlogo adingekayo kubo bonke abanye lapho kufundwa, kwanqunywa ukuthi kwengezwe umaka okhethekile kubhulokhi ngayinye ekuqaleni kwebhulokhi. Le tokheni ibethelwe kuye ngenombolo yebhulokhi kufayela elingumthombo. Leli qhinga ngokushesha lenza ukuthi kube nokwenzeka hhayi kuphela ukuthola amabhlogo adingekayo, kodwa futhi ukuqaphela ukuhleleka kwawo okulungile.

Umgomo ojwayelekile wokusebenza wesistimu.

I-steganography yesistimu yefayela

I-algorithm yokurekhoda

Amaphuzu:

  • Okokuqala bhala ulwazi oluthile ohlelweni lwefayela elingumthombo;
  • Susa lolu lwazi (hhayi konke);
  • Ifayela elizofihlwa lihlukaniswe ngamabhulokhi anobude obulinganayo, lengeza umaka;
  • Bethela lawa mabhulokhi;
  • Beka amabhulokhi abethelwe kumabhulokhi e-FS angenalutho.

Kubathandi be-block diagram

Ngezansi kunomdwebo webhulokhi we-algorithm yokurekhoda. I-algorithm ithola amafayela amane njengokufakiwe:
-Isithombe sesistimu yefayela eguquguqukayo;
-Ifayela lingaphansi kwe-steganography;
-Ifayela elinokhiye wokubethela we-AES;
-Ifayela elinomaka.
I-steganography yesistimu yefayela

Kuyafaneleka ukuqaphela ngaso leso sikhathi ukuthi le-algorithm ine-drawback eyodwa: ngemuva kokubhala ifayela ku-FS, ayikwazi bhala noma yini entsha ku-FS, njengoba noma yiluphi ulwazi olusha lungagcina lusemabhulokhini esiwabele ifayela lethu elizip, nakuba lokhu kuphinda kuvule ithuba “lokumboza amathrekhi ngokushesha.”

Kodwa kusobala ukuthi lokhu kungalungiswa kanjani: kuyadingeka ukuthi ubhale kabusha i-algorithm yokubhala amabhlogo ku-FS. Lona umsebenzi oqondakalayo, kodwa odla isikhathi ngendlela emangalisayo.
Ngobufakazi Bemvume angizange ngisebenzise lokhu.

Ngenxa yalokho, izinguquko ezilandelayo zizokwenziwa ku-FS; yile ndlela i-FS ebukeka ngayo ngaphambi kwe-steganography (ifayela lomsindo lalirekhodwa ngaphambilini).
I-steganography yesistimu yefayela
Futhi yile ndlela i-FS ebukeka ngayo ngolwazi oseluvele luvaliwe.
I-steganography yesistimu yefayela

Ukufunda i-algorithm

Amaphuzu:

  • Ngolwazi lokhiye kanye nendlela yokwakha omaka, bhala omaka bokuqala abangu-N, ngesiqinisekiso sokuthi u-N ophindwe ngobude bebhulokhi yesistimu yefayela mkhulu kunobude befayela elizip;
  • Sesha amabhlogo ku-FS uqale ngomaka;
  • Cacisa amabhlogo atholiwe bese uhlukanisa omaka;
  • Qoqa amabhlogo alandelanayo ngendlela efanele futhi uthole ifayela elingumthombo.

Kubathandi be-block diagram

Ngezansi kunomdwebo webhulokhi we-algorithm yokurekhoda. I-algorithm ithola amafayela amathathu njengokufaka:
-File system image;
-Ifayela elinokhiye wokubethela we-AES;
-Ifayela elinomaka.
I-steganography yesistimu yefayela

Ngemuva kokuthi uhlelo luqale, ifayela elithi Funda liyavela, okuzoba ifayela elikhishwe ohlelweni lwefayela le-steganographed; uma ukhiye noma umaka ushiwo ngokungalungile, ifayela le-Read ngeke libe nalutho.
(kubathandi bobuhle, awukwazi ukufaka ifayela kuphela, kodwa "inhlokweni" equkethe ulwazi lwe-meta: igama lefayela, amalungelo, isikhathi sokugcina esilungisiwe, njll.)

Ukuqalisa okuzenzakalelayo

Ukuze kube lula, imibhalo ye-bash yabhalwa ukwenza ngokuzenzakalelayo ukwethulwa ku-Linux (ihlolwe ku-Ubuntu 16.04.3 LTS).
Ake sibheke isinyathelo sokuqalisa ngesinyathelo.
Qopha:

  1. sudo Copy_Flash.sh "DEVICE" - thola isithombe se-FS ku-DEVICE (flash);
  2. ./Write.sh “IFILE” “UKHIYE” “UMAKER” - dala indawo ebonakalayo, landa imitapo yolwazi edingekayo futhi uqalise umbhalo wokubhala;
  3. sudo ./Write_Flash.sh “DEVICE” – bhala i-FS eshintshile futhi ku-DEVICE.

Ukufunda:

  1. sudo Copy_Flash.sh "DEVICE" - thola isithombe se-FS ku-DEVICE (flash);
  2. ./Read.sh “UKIYI” 'UMAKI' - dala indawo ebonakalayo, landa imitapo yolwazi edingekayo futhi usebenzise ukweqa ukuze ufunde;
  3. Kuhla lwemibhalo lwamanje, vula ifayela elithi Funda - lolu wulwazi oluziphu.

isiphetho

Le ndlela ye-steganography cishe idinga ukuthuthukiswa, ukuhlolwa okwengeziwe nokunwetshwa ezinhlelweni zefayela ezidume kakhulu, njenge Fat32, I-NTFS и ext4.
Kodwa inhloso yalo msebenzi kwakuwukukhombisa isimiso okungenzeka ngayo ukwenza isitoreji esifihliwe solwazi ohlelweni lwefayela.
Ngosizo lwama-algorithms anjalo, ungakwazi ukugcina ulwazi ngokungesabi, futhi uma, uma uwazi ukhiye, kungenzeka ukuthi ugebe uhlelo olunjalo hhayi ngamandla anonya (kodwa nge-algorithm ende kakhulu), khona-ke ngaphandle kokwazi ukhiye, lokhu uhlelo kimina lubonakala luzinzile ngokuphelele, noma kunjalo, lokhu kungase kusebenze njengesizathu sendatshana ehlukile.

Yonke ikhodi isetshenziswa kunguqulo ye-Python 3.5.2. Isibonelo somsebenzi yethulwe esiteshini sami se-youtube. Ikhodi egcwele yephrojekthi ithunyelwe ku github.
(Yebo, yebo, ngiyazi ukuthi enguqulweni yokukhiqiza udinga ukubhala kokuthile “okusheshayo”, isibonelo C 😉)
Kulokhu kuqaliswa, usayizi wefayela lokufaka le-steganography akumele udlule u-1000 kB.

Ngifuna ukuzwakalisa ukubonga kwami ​​kumsebenzisi PavelMSTU ukuthola iseluleko esibalulekile ekuhleleni ucwaningo kanye nezincomo mayelana nokwakhiwa kwesihloko.

Source: www.habr.com

Engeza amazwana