Steganography ndi mafayilo: kubisa deta mwachindunji m'magawo

Mawu oyamba achidule

Steganography, ngati wina sakumbukira, amabisa zambiri m'mitsuko ina. Mwachitsanzo, muzithunzi (zokambidwa apa ΠΈ apa). Mukhozanso kubisa deta mu matebulo utumiki wa dongosolo wapamwamba (izi zinalembedwa za apa), ndipo ngakhale mu TCP protocol service mapaketi. Tsoka ilo, njira zonsezi zili ndi cholepheretsa chimodzi: kuti "muyike" zambiri m'chidebe mosadziwika bwino, muyenera ma aligorivimu ochenjera omwe amaganizira za mawonekedwe amkati mwa chidebecho. Ndipo mavuto amadza chifukwa cha kukana kwa chidebe kuti chiwonongeke: mwachitsanzo, ngati mutasintha pang'ono chithunzicho, chidziwitso chobisika chimatayika.

Kodi ndizotheka kuchita mwanjira ina popanda ma aligorivimu ochenjera ndikusintha mochenjera ndi data, ndikuwonetsetsa kuti chidebecho chimagwira ntchito komanso chitetezo chovomerezeka cha data yobisika? Ndikuyang'ana m'tsogolo, ndikunena - inde, mungathe! Ndiperekanso zothandizira.

Magazi zambiri za njira

Lingaliro loyambirira ndi losavuta ngati kuwombera pamphumi: pali madera omwe ali pa disk omwe opaleshoni samalembera (kapena amalemba nthawi zambiri). Kuti tipewe kufunikira kofufuza maderawa pogwiritsa ntchito ma aligorivimu ochenjera, tidzagwiritsa ntchito redundancy - ndiko kuti, tidzabwereza zambiri zobisika nthawi zambiri m'magawo onse a disk. Kenako, pamwamba pa kukongola uku, mutha kupanga magawo ofunikira, mawonekedwe a fayilo, lembani mafayilo ndikuyika ma OS - chimodzimodzi, gawo lachinsinsi lidzapulumutsidwa ndipo litha kubwezedwa, ndikubwereza mobwerezabwereza kungatithandize. ikani zonse zoyambirira pamodzi kuchokera mu zidutswa.

Ubwino wa njirayi ndi wodziwikiratu: sitidalira mtundu wa fayilo, kapenanso mtundu wa mafayilo omwe amagwiritsidwa ntchito.

Zoyipa nazonso, ndikuganiza, ndizodziwikiratu:

  • Deta yachinsinsi ingasinthidwe polembanso diski yonse, ndikutsatiridwa ndikubwezeretsanso zomwe zikuwonekera kwa wogwiritsa ntchito. Komabe, simungagwiritse ntchito pulogalamu yomwe imapanganso diski kuchokera pa chithunzi: idzabwezeretsanso zinsinsi zakale.
  • Kuchulukirachulukira kwa deta yachinsinsi, m'pamenenso pali mwayi wotaya zambiri.
  • Kubweza deta kuchokera litayamba zingatenge nthawi yaitali. Kuyambira mphindi zingapo mpaka masiku angapo (ma disks amakono ndi akulu).

Tsopano tiyeni tipitirire ku zenizeni.

Zikuwonekeratu kuti ngati mungopaka deta yachinsinsi pa disk yonse, idzabisika m'maso. Ngati muyang'ana maso anu ndi, titi, disk editor, deta idzawoneka mu ulemerero wake wonse. Choncho, zingakhale bwino kubisa deta kuti isawonekere. Tilemba mophweka, koma mokoma: pogwiritsa ntchito aes256-cbc algorithm. Tidzafunsa wogwiritsa ntchito kiyi yachinsinsi ndikumulola kuti abwere ndi mawu achinsinsi abwino.

Funso lotsatira ndi momwe tingasiyanitsire deta "zabwino" kuchokera ku deta yoyipa. Apa cheke chingatithandize, koma osati chophweka, koma SHA1. Ndipo chiyani? Ndi yabwino kwa git, kotero itiyenera ifenso. Zagamula: timapereka chidziwitso chilichonse chosungidwa ndi chequesum, ndipo ngati pambuyo poti chitsimikize chikufanana, zikutanthauza kuti kumasulira kwachita bwino.

Mudzafunikanso nambala yachidutswa ndi kutalika kwa deta yachinsinsi. Nambala yachidutswa ndi yoti tizitsatira zomwe tazifotokoza kale ndi zomwe zatsala. Kutalika konse kudzakhala kothandiza kwa ife pokonza chidutswa chomaliza, kuti musalembe zosafunika (ndiko, padding). Chabwino, popeza tikadali ndi mutu, tidzawonjezera dzina la fayilo yachinsinsi pamenepo. Zidzakhala zothandiza pambuyo pa decryption, kuti musaganize momwe mungatsegule.

Kuyesa njira muzochita

Kuti muwone, tiyeni titenge njira yodziwika bwino - flash drive. Ndinapeza yakale yokhala ndi mphamvu ya 1 GB, yomwe ili yoyenera kuyesa. Ngati inu, monga ine, munabwera ndi lingaliro loti musavutike ndi zofalitsa zakuthupi, koma kuyesa pa fayilo - chithunzi cha disk, ndiye ndikunena nthawi yomweyo: sizigwira ntchito. Mukamapanga "disk" yotere, Linux imapanganso fayilo, ndipo magawo onse osagwiritsidwa ntchito adzadzazidwa ndi ziro.

Monga makina okhala ndi Linux, mwatsoka, ndinayenera kugwiritsa ntchito malo a nyengo pa Raspberry Pi 3 atagona pa khonde. Timadzichepetsera kukula kwake kwa 10 megabytes. Palibenso chifukwa chobisa mafayilo omwe ali ochepa kwambiri: zofunikira zimalemba deta ku disk m'magulu a 4 KB. Chifukwa chake, pansipa tidzipatula ku fayilo ya 3 kb - imalowa mgulu limodzi lotere.

Tidzanyoza flash drive m'magawo, kuyang'ana pambuyo pa gawo lililonse ngati zomwe zobisika zimawerengedwa:

  1. Kupanga mwachangu mumtundu wa FAT16 wokhala ndi masango kukula 16 KB. Izi ndi zomwe Windows 7 ikupereka kuchita ndi flash drive yomwe ilibe fayilo.
  2. Kudzaza flash drive ndi mitundu yonse ya zinyalala ndi 50%.
  3. Kudzaza flash drive ndi mitundu yonse ya zinyalala ndi 100%.
  4. Kupanga "kwautali" mumtundu wa FAT16 (kulemba zonse).

Mayesero awiri oyambirira, monga momwe amayembekezeredwa, adatha mu chigonjetso chathunthu: chothandizira chinatha kuchotsa bwino ma megabytes 10 achinsinsi kuchokera pagalimoto. Koma flash drive itadzaza ndi mafayilo, kulephera kunachitika:

Total clusters read: 250752, decrypted: 158
ERROR: cannot write incomplete secretFile

Monga mukuwonera, magulu 158 okha adatsitsidwa bwino (632 kilobytes ya data yaiwisi, yomwe imapereka ma byte 636424 a payload). Zikuwonekeratu kuti palibe njira yopezera ma megabytes 10 pano, komabe pakati pamaguluwa pali zobwereza zowonekeratu. Simungathe kubweza megabyte imodzi mwanjira iyi. Koma titha kutsimikizira kuti tipezanso ma kilobytes atatu achinsinsi kuchokera pagalimoto yoyang'anira ngakhale itasinthidwa ndikulembedweratu. Komabe, zoyeserera zikuwonetsa kuti ndizotheka kuchotsa fayilo yotalika ma kilobytes 1 kuchokera pagalimoto yotereyi.

Mayeso omaliza, mwatsoka, adawonetsa kuti flash drive yonse idalembedwa:

$ sudo ./steganodisk -p password /dev/sda
Device size: 250752 clusters
250700 99%
Total clusters read: 250752, decrypted: 0
ERROR: cannot write incomplete secretFile

Palibe gulu limodzi lomwe lapulumuka ... Zachisoni, koma osati zomvetsa chisoni! Tisanayambe kupanga, tiyeni tiyese kupanga magawo pa flash drive, ndipo kale momwemo fayilo. Mwa njira, idachokera kufakitale ndi mawonekedwe awa ndendende, kotero sitikuchita chilichonse chokayikitsa.
Zikuyembekezeka kuti malo omwe akupezeka pa flash drive achepa pang'ono.

Zikuyembekezekanso kuti ma megabytes 10 sakanakhoza kubisika pa disk yodzaza kwathunthu. Koma tsopano chiwerengero cha magulu otsekedwa bwino chawonjezeka kuwirikiza kawiri!

Total clusters read: 250752, decrypted: 405

Tsoka ilo, ndizosatheka kusonkhanitsa megabyte kuchokera ku zidutswa, koma ma kilobytes mazana awiri ndi osavuta.

Chabwino, nkhani yomaliza, cheke cha 4, nthawi ino ndi yosangalatsa: kupanga mapangidwe amtundu woterewu sikunabweretse chiwonongeko cha chidziwitso chonse! 120 kilobytes ya data yachinsinsi imagwirizana bwino ndi malo osagwiritsidwa ntchito.

Tabu lachidule cha mayeso:

Steganography ndi mafayilo: kubisa deta mwachindunji m'magawo

Kulingalira pang'ono: za malo aulere ndi magawo osagwiritsidwa ntchito

Ngati mudagawaniza hard drive yanu kukhala magawo, mwina mwawona kuti sizingatheke kugawa malo onse aulere pa disk. Gawo loyamba nthawi zonse limayamba ndi kulowera kwina (nthawi zambiri 1 megabyte, kapena magawo 2048). Kumbuyo kwa gawo lomaliza, zimachitikanso kuti pali "mchira" waung'ono wa magawo osagwiritsidwa ntchito. Ndipo nthawi zina pali mipata pakati pa zigawo, ngakhale kawirikawiri.

Mwa kuyankhula kwina, pali magawo pa disk omwe sangathe kupezedwa panthawi yogwira ntchito ndi disk, koma deta ikhoza kulembedwa kumagulu awa! Ndipo zimenezo zikutanthauza kuliΕ΅erenganso. Kusinthidwa kuti palinso tebulo logawa ndi code bootloader, zomwe zili pamalo opanda kanthu kumayambiriro kwa disk.

Tiyeni tipume pang'ono kuchokera pazigawozo ndikuyang'ana diski kuchokera m'maso mwa mbalame, kunena kwake. Pano tili ndi gawo lopanda kanthu pa disk. Tiyeni tipange fayilo dongosolo mmenemo. Kodi tinganene kuti magawo ena pa diski amakhalabe osafufutidwa?

E-e-e - ng'oma roll! Yankho pafupifupi nthawi zonse lidzakhala inde! Zowonadi, nthawi zambiri, kupanga mawonekedwe a fayilo kumatsikira polemba zidziwitso zochepa zautumiki ku diski, ndipo apo ayi zomwe zili mugawolo sizisintha.

Komanso - mwamphamvu - titha kuganiza kuti mafayilo amafayilo sangakhale nthawi zonse malo omwe adapatsidwa mpaka gawo lomaliza. Mwachitsanzo, fayilo ya FAT16 yokhala ndi masango kukula kwa ma kilobytes 64 mwachiwonekere sangakhale ndi gawo limodzi la kukula osati kuchulukitsa kwa 64 kilobytes. Kumapeto kwa gawo loterolo payenera kukhala "mchira" wamagulu angapo, osafikirika kuti asunge deta ya ogwiritsa ntchito. Komabe, lingaliro ili silinatsimikizidwe moyesera.

Chifukwa chake, kuti muwonjezere malo omwe alipo pa steganogram, muyenera kugwiritsa ntchito fayilo yokhala ndi makulidwe akulu akulu. Mukhozanso kupanga magawo, ngakhale izi siziri zofunikira (pa flash drive, mwachitsanzo). Palibe chifukwa chopanga magawo opanda kanthu kapena kusiya madera osagawidwa - izi zidzakopa chidwi cha anthu omwe ali ndi chidwi.

Zothandiza pazoyeserera

Mutha kukhudza gwero lazomwe mungagwiritse ntchito apa

Kuti mumange, mudzafunika mtundu wa Qt 5.0 kapena wapamwamba ndi OpenSSL. Ngati china chake sichikuyenda, mungafunike kusintha fayilo ya steganodisk.pro.

Mutha kusintha kukula kwa tsango kuchokera ku 4 KB kupita, kunena, 512 bytes (mu secretfile.h). Panthawi imodzimodziyo, mtengo wa chidziwitso chautumiki udzawonjezeka: mutu ndi checksum zimakhala ndi ma byte 68 okhazikika.

Muyenera kuyendetsa ntchitoyo, inde, ndi ufulu wogwiritsa ntchito mizu, komanso mosamala. Sipadzakhala mafunso omwe adzafunsidwa musanalembenso fayilo kapena chipangizo chomwe mwasankha!

Sangalalani.

Source: www.habr.com

Kuwonjezera ndemanga