Стеганографияи системаи файлӣ

Салом, Хабр.

Ман мехоҳам ба шумо як лоиҳаи хурдеро пешниҳод кунам стеганография, дар вацти холии худ аз тахсил.

Ман лоиҳаи нигоҳдории пинҳонии иттилоотро дар системаи файлӣ таҳия кардам (минбаъд ФС).
Ин метавонад барои дуздидани маълумоти махфӣ бо мақсадҳои таълимӣ истифода шавад.

Стеганографияи системаи файлӣ

Ба сифати прототип як Linux FS хеле кӯҳна интихоб карда шуд ext2.

Реализация

Мулоҳизаҳои амалӣ

Агар "кушода" кардани стандарти ext2 хуб бошад, пас шумо метавонед онро иваз кунед, ки дар FS ба ном вуҷуд дорад. Суперблокҳо, ки маълумоти асосиро дар бораи система таъмин мекунад. Пас аз пайдо шудани ман Блоки Bitmap и Ҷадвали Inod. Қариб дарҳол, идеяи сабти маълумот дар блокҳои холии FS пайдо шуд. Акнун дар бораи муҳофизат аз барномасози мусаллаҳ фикр кардан лозим буд муҳаррири шонздаҳӣ.

Агар шумо маълумоти пинҳониро бидуни рамзгузорӣ нигоҳ доред, он гоҳ, сарфи назар аз норавшании он дар FS, он ба ҳар ҳол хеле намоён хоҳад буд, хусусан агар барномасоз донад, ки чӣ бояд кард. Аз ин рӯ, қарор дода шуд, ки ҳамаи блокҳои файли сарчашма рамзгузорӣ карда шаванд. Ман шифри блокро интихоб кардам AES, аммо чунон ки шумо мефаҳмед, ин муҳим нест.

Барои аз хамаи дигар блокхо чудо кардани блокхои зарурй хангоми хондан карор дода шуд, ки дар аввали блок ба хар як блок маркери махсус илова карда шавад. Ин нишона вобаста ба рақами блок дар файли манбаъ рамзгузорӣ шудааст. Ин ҳилла дарҳол имкон дод, ки на танҳо блокҳои заруриро пайдо кунанд, балки тартиби дурусти онҳоро эътироф кунанд.

Принсипи умумии кори система.

Стеганографияи системаи файлӣ

Алгоритми сабт

Нуқтаҳои:

  • Аввалан баъзе маълумотро ба системаи файлии сарчашма нависед;
  • Ин маълумотро нест кунед (на ҳатман ҳама);
  • Файле, ки пинҳон карда мешавад, ба блокҳои дарозии баробар тақсим карда мешавад, илова кардани маркер;
  • Ин блокҳоро рамзгузорӣ кунед;
  • Блокҳои рамзшударо дар блокҳои холии FS ҷойгир кунед.

Барои дӯстдорони диаграммаи блок

Дар зер диаграммаи блоки алгоритми сабт оварда шудааст. Алгоритм чаҳор файлро ҳамчун вуруд қабул мекунад:
-Тасвири системаи файлии тағирёбанда;
-файл бояд стеганография бошад;
-Файл бо калиди рамзгузорӣ барои AES;
- Файл бо маркер.
Стеганографияи системаи файлӣ

Дарҳол бояд қайд кард, ки ин алгоритм як нуқсон дорад: пас аз навиштани файл ба FS, наметавонад ҳар чизи навро ба FS нависед, зеро ҳар як маълумоти нав метавонад дар блокҳое, ки мо ба файли zip-и мо ҷудо кардаем, хотима ёбад, гарчанде ки ин инчунин имкони "зуд пӯшонидани роҳҳои моро" мекушояд.

Аммо комилан равшан аст, ки инро чӣ гуна ислоҳ кардан мумкин аст: алгоритми навиштани блокҳоро дар FS аз нав навиштан лозим аст. Ин як кори фаҳмо, вале бениҳоят вақтталаб аст.
Барои исботи консепт ман инро иҷро накардаам.

Дар натиҷа, тағиротҳои зерин ба FS ворид карда мешаванд; FS пеш аз стеганография чунин аст (файли аудиоӣ қаблан сабт шуда буд).
Стеганографияи системаи файлӣ
Ва ин аст, ки FS бо иттилооте, ки аллакай зер карда шудааст, ба назар мерасад.
Стеганографияи системаи файлӣ

Алгоритми хониш

Нуқтаҳои:

  • Бо донистани калид ва усули сохтани маркерҳо, N маркерҳои аввалро тартиб диҳед, бо кафолати он, ки N зарб ба дарозии блоки системаи файлӣ аз дарозии файли zip калонтар аст;
  • Ҷустуҷӯи блокҳо дар ФС аз маркерҳо сар карда;
  • Блокҳои гирифташударо дешифр ва маркерҳоро ҷудо кунед;
  • Блокҳои натиҷаро бо тартиби дуруст ҷамъ кунед ва файли манбаъро гиред.

Барои дӯстдорони диаграммаи блок

Дар зер диаграммаи блоки алгоритми сабт оварда шудааст. Алгоритм се файлро ҳамчун вуруд қабул мекунад:
-Тасвири системаи файлӣ;
-Файл бо калиди рамзгузорӣ барои AES;
- Файл бо маркер.
Стеганографияи системаи файлӣ

Пас аз иҷрои барнома, файли Хондашуда пайдо мешавад, ки он файлест, ки аз системаи файлии стеганографӣ истихроҷ карда мешавад; агар калид ё маркер нодуруст нишон дода шуда бошад, файли Хондан холӣ хоҳад буд.
(барои дӯстдорони зебоӣ, шумо метавонед на танҳо файл, балки "сарлавҳа" -ро, ки дорои мета-маълумот аст: номи файл, ҳуқуқҳо, вақти охирини тағирёфта ва ғайра дохил кунед.)

Автоматикунонии оғозёбӣ

Барои роҳат, скриптҳои bash барои автоматикунонии роҳандозӣ дар Linux навишта шудаанд (дар Ubuntu 16.04.3 LTS озмуда шудааст).
Биёед ба марҳила ба марҳила оғозёбӣ назар кунем.
Сабт:

  1. sudo Copy_Flash.sh "DEVICE" - тасвири FS-ро аз DEVICE (flash) гиред;
  2. ./Write.sh “FILE” “КАЛИД” “MARKER” – муҳити виртуалӣ эҷод кунед, китобхонаҳои заруриро зеркашӣ кунед ва скрипти навиштанро иҷро кунед;
  3. sudo ./Write_Flash.sh “DEVICE” – FS-и тағирёфтаро дубора ба DEVICE нависед.

Хондан:

  1. sudo Copy_Flash.sh "DEVICE" - тасвири FS-ро аз DEVICE (flash) гиред;
  2. ./Read.sh “KEY” 'MARKER” - эҷод кардани муҳити маҷозӣ, зеркашӣ кардани китобхонаҳои зарурӣ ва скиптро барои хондан иҷро кунед;
  3. Дар феҳристи ҷорӣ, файли Хондашударо кушоед - ин иттилооти зеркашидашуда мебошад.

хулоса

Ин усули стеганография эҳтимол ба такмил, санҷиши иловагӣ ва васеъ кардани системаҳои файлии маъмултар ниёз дорад, масалан Фарбеҳ32, NTFS и ext4.
Аммо ҳадафи ин кор нишон додани принсипе буд, ки тавассути он нигоҳдории пинҳонии иттилоот дар системаи файлӣ имконпазир аст.
Бо ёрии ин гуна алгоритмҳо шумо метавонед иттилоотро бетарсона нигоҳ доред ва агар шумо калидро донед, ин гуна системаро на бо қувваи бераҳмона (балки бо алгоритми хеле дароз) шикастан мумкин аст, пас бе донистани калид ин Система ба назари ман комилан устувор аст, аммо ин метавонад барои мақолаи алоҳида сабаб шавад.

Ҳама рамзҳо дар версияи Python 3.5.2 амалӣ карда мешаванд. Намунаи кор дар канали youtube-и ман пешниҳод шудааст. Рамзи пурраи лоиҳа дар он ҷойгир карда шудааст Гитуб.
(Бале, бале, ман медонам, ки барои версияи истеҳсолӣ шумо бояд дар ягон чизи "тез" нависед, масалан C 😉)
Дар ин татбиқ, андозаи файли воридотӣ барои стеганография набояд аз 1000 кБ зиёд бошад.

Ман мехоҳам ба корбар миннатдории худро баён кунам Павел МТУ барои маслиҳатҳои пурарзиш дар банақшагирии омӯзиш ва тавсияҳо оид ба тарҳрезии мақола.

Манбаъ: will.com

Илова Эзоҳ