Steganography siostam faidhle a

Hi Habr.

Bu mhath leam pròiseact beag a thaisbeanadh dhut air steganography, air a dhèanamh nam ùine shaor bho bhith ag ionnsachadh.

Rinn mi pròiseact air stòradh falaichte fiosrachaidh san t-siostam faidhle (tuilleadh FS).
Faodar seo a chleachdadh gus fiosrachadh dìomhair a ghoid airson adhbharan foghlaim.

Steganography siostam faidhle a

Chaidh seann Linux FS a thaghadh mar prototype ext2.

Реализация

Beachdachaidhean Buileachaidh

Ma tha e math “an ìre ext2 fhuasgladh”, faodaidh tu sin a chuir na àite san FS tha rud ris an canar Superblocks, a bheir seachad fiosrachadh bunaiteach mun t-siostam. Às deidh dhomh a bhith air mo lorg Cuir casg air Bitmap и Clàr Inode. Cha mhòr sa bhad, rugadh am beachd air fiosrachadh a chlàradh a-steach do bhlocaichean FS falamh. A-nis b 'fhiach e smaoineachadh mu dhìon bho phrogramaiche armaichte deasaiche hex.

Ma tha thu a’ stòradh fiosrachadh falaichte gun chrioptachadh, an uairsin, eadhon a dh’ aindeoin cho doilleir sa tha e san FS, bidh e fhathast ro fhollaiseach, gu sònraichte ma tha fios aig a’ phrògramadair dè a choimheadas e. Mar sin, chaidh co-dhùnadh a h-uile bloc den fhaidhle stòr a chrioptachadh. Thagh mi bloc cipher AES, ach mar a thuigeas tu, chan eil seo cudromach.

Gus na blocaichean riatanach a sgaradh bhon fheadhainn eile nuair a bha iad a 'leughadh, chaidh co-dhùnadh comharra sònraichte a chur ris gach bloc aig toiseach a' bhloc. Chaidh an comharra seo a chrioptachadh a rèir àireamh a’ bhloca san fhaidhle stòr. Rinn an cleas seo sa bhad e comasach chan ann a-mhàin na blocaichean riatanach a lorg, ach cuideachd an òrdugh ceart aithneachadh.

Prionnsabal obrachaidh coitcheann an t-siostaim.

Steganography siostam faidhle a

Algorithm clàraidh

Na puingean:

  • An toiseach sgrìobh beagan fiosrachaidh chun t-siostam faidhle tùsail;
  • Sguab às am fiosrachadh seo (chan e gu feum a h-uile);
  • Tha am faidhle a tha falaichte air a roinn ann am blocaichean den aon fhaid, a 'cur comharradh ris;
  • Crioptaich na blocaichean seo;
  • Cuir blocaichean crioptaichte ann am blocaichean FS falamh.

Airson luchd-leantainn diagram bloc

Gu h-ìosal tha diagram bloca den algorithm clàraidh. Bidh an algairim a’ faighinn ceithir faidhlichean mar chur-a-steach:
-Ìomhaigh de shiostam faidhle a ghabhas atharrachadh;
-Faidhle le ùmhlachd do steganography;
-Faidhle le iuchair crioptachaidh airson AES;
-Faidhle le comharraiche.
Steganography siostam faidhle a

Is fhiach a bhith mothachail sa bhad gu bheil aon eas-bhuannachd aig an algairim seo: às deidh dhut am faidhle a sgrìobhadh chun FS, chan urrainn sgrìobh rud sam bith ùr a-steach don FS, oir faodaidh fiosrachadh ùr sam bith tighinn gu crìch anns na blocaichean a tha sinn air a riarachadh don fhaidhle zipped againn, ged a tha seo cuideachd a’ fosgladh a ’chomas a bhith“ a ’còmhdach ar slighean gu sgiobalta.”

Ach tha e gu math follaiseach mar a dh'fhaodar seo a rèiteachadh: feumar ath-sgrìobhadh a dhèanamh air an algairim airson blocaichean sgrìobhaidh anns an FS. Is e obair a tha seo a tha so-thuigsinn, ach gu h-iongantach a’ caitheamh ùine.
Airson Proof Of Consept cha do chuir mi seo an gnìomh.

Mar thoradh air an sin, thèid na h-atharrachaidhean a leanas a dhèanamh air an FS; seo cò ris a tha an FS coltach ro steganography (chaidh faidhle claisneachd a chlàradh roimhe seo).
Steganography siostam faidhle a
Agus is e seo cò ris a tha an FS coltach leis an fhiosrachadh a chaidh a chuir suas mu thràth.
Steganography siostam faidhle a

Algorithm leughaidh

Na puingean:

  • Le eòlas air an iuchair agus an dòigh air comharran a thogail, cruthaich a ’chiad chomharran N, leis a’ ghealladh gu bheil N air iomadachadh le fad bloc an t-siostam faidhle nas motha na fad an fhaidhle steganographed;
  • Lorg blocaichean san FS a’ tòiseachadh le comharran;
  • Dèan rèiteachadh air na blocaichean a fhuaireadh agus dealaich na comharran;
  • Cruinnich na blocaichean a thig às san òrdugh cheart agus faigh am faidhle tùsail.

Airson luchd-leantainn diagram bloc

Gu h-ìosal tha diagram bloca den algorithm clàraidh. Bidh an algairim a’ faighinn trì faidhlichean mar chur-a-steach:
-File siostam ìomhaigh;
-Faidhle le iuchair crioptachaidh airson AES;
-Faidhle le comharraiche.
Steganography siostam faidhle a

Às deidh don phrògram ruith, nochdaidh am faidhle Read, is e sin am faidhle a chaidh a thoirt a-mach às an t-siostam faidhle steganographed; ma chaidh an iuchair no an comharra a shònrachadh gu ceàrr, bidh am faidhle Read falamh.
(airson leannanan bòidhchead, faodaidh tu chan e a-mhàin am faidhle a chuir a-steach, ach “cinn-cinn” anns a bheil meta-fhiosrachadh: ainm faidhle, còraichean, an ùine atharraichte mu dheireadh, msaa.)

Automation tòiseachaidh

Airson goireasachd, chaidh sgriobtaichean bash a sgrìobhadh gus an cur air bhog air Linux a dhèanamh fèin-ghluasadach (deuchainn air Ubuntu 16.04.3 LTS).
Bheir sinn sùil air an fhoillseachadh ceum air cheum.
Clàradh:

  1. sudo Copy_Flash.sh “DEVICE” - faigh an ìomhaigh FS bho DEVICE (flash);
  2. ./Write.sh “FILE” “PRÌOMH” “MARKER” - cruthaich àrainneachd bhrìgheil, luchdaich sìos na leabharlannan riatanach agus ruith an sgriobt sgrìobhaidh;
  3. sudo ./Write_Flash.sh “DEVICE” - sgrìobh an FS atharraichte a-rithist gu DEVICE.

Leughadh:

  1. sudo Copy_Flash.sh “DEVICE” - faigh an ìomhaigh FS bho DEVICE (flash);
  2. ./Read.sh “PRÌOMH” ‘MARKER’ - cruthaich àrainneachd bhrìgheil, luchdaich sìos na leabharlannan riatanach agus ruith an sgiobair airson leughadh;
  3. Anns an eòlaire làithreach, fosgail am faidhle Leugh - is e seo am fiosrachadh zipped.

co-dhùnadh

Is dòcha gu feum an dòigh steganography seo leasachadh, deuchainn a bharrachd agus leudachadh gu siostaman faidhle nas mòr-chòrdte, leithid Fat32, NTFS и ext4.
Ach b 'e adhbhar na h-obrach seo a bhith a' sealltainn a 'phrionnsapail leis a bheil e comasach stòradh falaichte fiosrachaidh a dhèanamh anns an t-siostam faidhle.
Le cuideachadh bho leithid de algorithms, faodaidh tu fiosrachadh a stòradh gun eagal, agus ma tha, ma tha fios agad air an iuchair, tha e comasach siostam mar seo a sheacadh chan ann le feachd brùideil (ach le algairim glè fhada), an uairsin gun fhios dè an iuchair, seo tha e coltach riumsa gu bheil an siostam gu tur seasmhach, ge-tà, dh’ fhaodadh seo a bhith na adhbhar airson artaigil air leth.

Tha a h-uile còd air a chuir an gnìomh ann an dreach Python 3.5.2. Eisimpleir de dh'obair air a thaisbeanadh air an t-sianal youtube agam. Tha còd iomlan a’ phròiseict air a phostadh air GitHub.
(Tha, tha, tha fios agam gum feum thu rudeigin “luath” a sgrìobhadh a-steach airson an dreach riochdachaidh, mar eisimpleir C 😉)
Anns a’ bhuileachadh seo, cha bu chòir meud an fhaidhle cuir a-steach airson steganography a bhith nas àirde na 1000 kB.

Tha mi airson mo thaing a thoirt don neach-cleachdaidh PavelMSTU airson comhairle luachmhor ann am planadh an sgrùdaidh agus molaidhean air dealbhadh an artaigil.

Source: www.habr.com

Cuir beachd ann