File system steganography

Hey Habr.

Mwen ta renmen prezante w yon ti pwojè sou esteganografi, te fè nan tan lib mwen nan etidye.

Mwen te fè yon pwojè sou depo kache enfòmasyon nan sistèm dosye a (plis FS).
Sa ka sèvi pou vòlè enfòmasyon konfidansyèl pou rezon edikasyon.

File system steganography

Yon trè ansyen Linux FS te chwazi kòm yon pwototip Ext2.

Aplikasyon

Konsiderasyon Aplikasyon

Si li bon pou "debouye" estanda ext2 a, Lè sa a, ou ka ranplase ke nan FS la gen yon sa yo rele. Superblok, ki bay enfòmasyon debaz sou sistèm nan. Apre yo te jwenn mwen Bloke Bitmap и Tablo Inode. Prèske imedyatman, lide pou anrejistre enfòmasyon nan blòk FS ki vid kounye a te fèt. Koulye a, li te vo panse sou pwoteksyon kont yon pwogramè ame editè hex.

Si ou estoke enfòmasyon kache san chifreman, lè sa a, menm malgre flou li yo nan FS la, li ap toujou twò evidan, espesyalman si pwogramè a konnen ki sa yo gade. Se poutèt sa, li te deside ankripte tout blòk nan dosye sous la. Mwen te chwazi chifreman blòk AES, men jan ou konprann, sa a pa enpòtan.

Pou separe blòk ki nesesè yo soti nan tout lòt yo lè lekti, li te deside ajoute yon makè espesyal nan chak blòk nan kòmansman an nan blòk la. Siy sa a te chiffres selon nimewo blòk nan fichye sous la. Trick sa a imedyatman te fè li posib pa sèlman jwenn blòk ki nesesè yo, men tou, yo rekonèt lòd kòrèk yo.

Prensip jeneral operasyon sistèm lan.

File system steganography

Algorithm anrejistreman

Pwen yo:

  • Premye ekri kèk enfòmasyon nan sistèm dosye sous la;
  • Efase enfòmasyon sa yo (pa nesesèman tout);
  • Se fichye a yo dwe kache divize an blòk ki gen longè egal, ajoute yon makè;
  • Ankripte blòk sa yo;
  • Mete blòk chiffres nan blòk FS vid.

Pou rayisab dyagram blòk

Anba a se yon dyagram blòk nan algorithm anrejistreman an. Algorithm la resevwa kat dosye kòm opinyon:
-Imaj nan yon sistèm dosye modifye;
-Fichye sijè a esteganografi;
-Fichiye ak kle chifreman pou AES;
-Fichye ak makè.
File system steganography

Li vo anyen touswit ke algorithm sa a gen yon sèl dezavantaj: apre yo fin ekri fichye a nan FS la, pa dwe ekri nenpòt bagay nouvo nan FS la, paske nenpòt nouvo enfòmasyon ka fini nan blòk yo ke nou te asiyen nan fichye zip nou an, byenke sa a tou ouvè posiblite pou "kouvri tras nou rapidman."

Men, li se byen evidan ki jan sa a ka fiks: li nesesè reekri algorithm la pou ekri blòk nan FS la. Sa a se yon travay ki konprann, men ekstrèmman pran tan.
Pou Proof Of Consept mwen pa aplike sa.

Kòm yon rezilta, chanjman sa yo pral fè nan FS a; sa a se sa FS a sanble anvan steganografi (yon dosye odyo te deja anrejistre).
File system steganography
Ak sa a se sa FS a sanble ak enfòmasyon yo deja zip moute.
File system steganography

Lekti algorithm

Pwen yo:

  • Avèk konesans kle a ak metòd pou konstwi makè, konpoze premye N makè yo, ak garanti ke N miltipliye pa longè blòk sistèm fichye a pi gran pase longè fichye zip la;
  • Chèche blòk nan FS la kòmanse ak makè;
  • Desifre blòk yo resevwa epi separe makè yo;
  • Kolekte blòk ki kapab lakòz yo nan lòd ki kòrèk la epi jwenn dosye sous la.

Pou rayisab dyagram blòk

Anba a se yon dyagram blòk nan algorithm anrejistreman an. Algorithm la resevwa twa dosye kòm opinyon:
-Fichiye sistèm imaj;
-Fichiye ak kle chifreman pou AES;
-Fichye ak makè.
File system steganography

Apre pwogram nan kouri, fichye Read la parèt, ki pral fichye a soti nan sistèm fichye steganographed la; si kle a oswa makè a te espesifye mal, Lè sa a, fichye Read la pral vid.
(pou rayisab bote, ou ka mete non sèlman fichye a, men yon "header" ki gen meta-enfòmasyon: non dosye, dwa, dènye tan modifye, elatriye)

Otomatik demaraj

Pou konvenyans, scripts bash yo te ekri pou otomatize lansman an sou Linux (teste sou Ubuntu 16.04.3 LTS).
Ann gade nan lansman etap pa etap.
Dosye:

  1. sudo Copy_Flash.sh "APARÈY" - jwenn imaj FS la soti nan APÈYÈ (flash);
  2. ./Write.sh "FILE" "KEY" "MARKER" - kreye yon anviwònman vityèl, telechaje bibliyotèk ki nesesè yo epi kouri ekri script la;
  3. sudo ./Write_Flash.sh "APARÈY" - ekri FS ki chanje a ankò nan APARÈY.

Lekti:

  1. sudo Copy_Flash.sh "APARÈY" - jwenn imaj FS la soti nan APÈYÈ (flash);
  2. ./Read.sh “KEY” 'MARKER” - kreye yon anviwònman vityèl, telechaje bibliyotèk ki nesesè yo epi kouri skipt la pou lekti;
  3. Nan anyè aktyèl la, louvri fichye Li a - sa a se enfòmasyon ki konprese.

Konklizyon

Metòd steganografi sa a pwobableman bezwen amelyorasyon, tès adisyonèl ak ekstansyon nan sistèm dosye ki pi popilè, tankou Grès32, Nf и Ext4.
Men, objektif la nan travay sa a se te montre prensip la pa ki li se posib pote soti nan depo kache nan enfòmasyon nan sistèm nan dosye.
Avèk èd nan algorithm sa yo, ou ka san pè estoke enfòmasyon, epi si, si ou konnen kle a, li posib pirate yon sistèm sa yo pa pa fòs brital (men pa yon algorithm trè long), Lè sa a, san yo pa konnen kle a, sa a. sistèm sanble m 'yo dwe absoliman ki estab, sepandan, sa a ka sèvi kòm yon rezon pou yon atik separe.

Tout kòd aplike nan vèsyon Python 3.5.2. Egzanp travay prezante sou chanèl youtube mwen an. Tout kòd pwojè a afiche sou GitHub.
(Wi, wi, mwen konnen ke pou vèsyon pwodiksyon an ou bezwen ekri nan yon bagay "vit", pa egzanp C 😉)
Nan aplikasyon sa a, gwosè a nan dosye a antre pou steganografi pa ta dwe depase 1000 kB.

Mwen vle eksprime rekonesans mwen anvè itilizatè a PavelMSTU pou konsèy ki gen anpil valè nan planifikasyon etid la ak rekòmandasyon sou konsepsyon atik la.

Sous: www.habr.com

Add nouvo kòmantè