Jump to content
  • Entries

    16114
  • Comments

    7952
  • Views

    863567518

Contributors to this blog

  • HireHackking 16114

About this blog

Hacking techniques include penetration testing, network security, reverse cracking, malware analysis, vulnerability exploitation, encryption cracking, social engineering, etc., used to identify and fix security flaws in systems.

1。フラグの提出形式

フラグ{th1s_!s_a_d4m0_4la9}

2。 PDFステガノグラフィ

writeup:オンラインワードを使用してPDFツールを使用してワードファイルに変換し、flag3https://App.xunjiepdf.com/pdf2word/StegSolveツールのフレームブラウザブラウザを使用して、静的画像ファイル形式のファイル形式を表示します。これは、主に画像の特定の情報を表示します。

データ抽出:データ抽出、写真の隠されたデータの抽出

フレームブラウザー:フレームブラウザーは、主にGIFなどのアニメーションを分解し、アニメーションが画像になり、簡単に表示されます。

画像combiner:パズル、画像ステッチ

1049983-20210806170733688-1639547127.png2。 QRコードには、位置付けパターンと呼ばれる3つの小さな正方形がありませんが、QRコード長方形のサイズをマークするために使用されます。 3つの位置決めパターンを使用して、QRコード長方形の位置と方向を識別および決定できます。 3.静的画像のスクリーンショットを保存し、Phoshtopツールを使用してQRコード画像を修復してからスキャンします

https://jiema.wwei.cn/(QRコードオンライン識別ツール)

iii。 GIFピクチャーステガノグラフィ

writeup:

1. JD-GUIで開き、直接検索:フラグ

1049983-20210806170734226-2031427154.png 1049983-20210806170735894-1564562099.png2。 base64を使用して、フラグを解読します{dajidali_jinwanchiji}

iv。 jar steganography

writeup:1。 WinHexを使用してこれらの写真を表示すると、利用可能な情報が見つかりませんでした。したがって、白黒はバイナリ0と1を表す可能性があると思いました。合計で104枚の写真があり、正確に8の倍数であり、8つの1バイナリシステムに変換してからASCIIコードに変換できます。たくさんの写真があるので、Pythonスクリプトを書きます。ここでは、Python Image Library PIL(Python Image Library)を使用します。これは、Python用のサードパーティ画像処理ライブラリです。 PILインポート画像から

結果=''

範囲(104):のIの場合

img=image.open(f'c: \\ users \\ backlion \\ desktop \\ ctf \\ jpg \\ gif \\ {i} .jpg ')

im_rgb=img.convert( 'rgb')#画像をRGBモードに変換する

r、g、b=im_rgb.getpixel((1,1))#xとy座標のRGB値をゲット

印刷(r、g、b)#この質問では、白い画像のRGB値:255,255,255ブラック画像RGB値:12,12,0

r!=255:#255が白の場合

結果+='1'

else:

結果+='0'

#バイナリをASCIIコードに変換します

範囲(0、len(result)、8):のiの場合

byte=result [i:i+8]

print(chr(int(byte、2))、end='')

'' '

rusult:

フラグ{fun_gif}

'' 2。オンラインバイナリから文字列http://www.txttool.com/wenben_binarystr.asp 1049983-20210806170736323-824509265.png

5。圧縮パッケージ暗号化された白黒写真

writeup:このメッセージは次のとおりです。 c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eafae3f9e4eafae2eae4e3eaebfaebe3f5e7e9f3e4e3e8eaf9eaf3e2e4e6f2writeup:1.この暗号化と復号化方法は非常に簡単に推測できます。文字は最大fであるため、16進数を推測するため、グループには2つあります。 2つのグループごとに、16進数を小数に変換します。データの各セットは127を超えていることがわかりますが、ASCIIコードの値は127以下ではないため、すべての値は128で差し引かれ、文字に変換され、フラグが取得されます。 string='c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eabae3f9e4eafae4e3eebfaebebebebebebebebebebebebe7e7e9f3e4e3e3e3e8ea893e2e4e4e6e6f2'

flag=''

範囲(0、len(string)、2):のiの場合

s='0x' + string [i] + string [i + 1]

flag +=chr(int(s、16)-128)

印刷(フラグ)2。取得:こんにちは、フレッシュドッグ!フラグは: hjzcydjzbjdcjkzkzkcugisdchjyjsbdfr注:jpocketknifeを使用して

6、ascii

の16進

Writeup:1を変換することもできます。テキストは次のように表示されます:ye duo xi xi xi xi duo duo duo lu mu lu three nephews three、3番目のne、3番目は、3番目は3番目です。3番目は3番目です。3番目は3番目です。3番目は3番目です。3番目は3番目です。 3番目、3番目は、3番目は、3番目の1つ、3番目は3番目、3番目は3番目です。3番目は3番目です。3番目は3番目です。3番目は3番目です。 3番目、3番目は、3番目は、3番目は、3番目は3番目です。3番目は、3番目は3番目です。3番目は3番目です。3番目は3番目です。3番目は3番目です。 3番目は、3番目のもの、3番目のもの、3番目のものは、3番目のもの、3番目のものは、3番目は、3番目は3番目です。3番目は3番目です。私はti病でti病であるのではないかと心配しています。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病でti病です。私はti病です

2。仏の言葉の意味は、オンライン翻訳ツールhttp://www.keyfc.net/bbs/tools/tudoucode.aspx:1049983-20210806170736841-882418160.png3を介して復号化できます。次に、復号化されたmzkum3gvmuawnzuvn3cgozmlmtuvqzaenjchmuaeqzwenzemljw9は、rot-13ツールを使用します(タイトルに記載されている「タタガタの13ヤシ」に従って)。

zmxhz3tizhnjamhia3ptbmzyzghidmnrawpuzhnrdmjramrzywj9を取得します

1049983-20210806170738486-1202624319.pnghttps://ROT13.com/(オンラインツール)Python Decryption:#Coding:UTF-8

文字列をインポートします

defデコーダー(crypt_str、shift):

crypt_list=list(crypt_str)

Plain_str=''

num=int(shift)

crypt_list:のChの場合

ch=ord(ch)

if ord( 'a')=chおよびch=ord( 'z'):

ch=ch + num

ch ord( 'z'):の場合

ch-=26

if ord( 'a')=chおよびch=ord( 'z'):

ch=ch +num

ch ord( 'z'):の場合

ch-=26

a=chr(ch)

Plain_str +=a

print(plain_str)

crypt_str=raw_input( 'crypto_text:')

印刷'!-------デコード------!'

シフト=13

Decoder(crypt_str、shift)注:rot13は、単純な交換エンタープライプアルゴリズムを使用して、最初の文字と最後の13文字を合成します。

4。Base64復号化

flag {bdscjhbkzmnfrdhbvvckijndskvbkjdsab}

7。仏を仏buddhで解読します

writeup:1。 Google Chromeを介してPDFファイルを開き、テキストコンテンツをテキストにコピーします

1049983-20210806170739240-1445752685.jpg 1049983-20210806170739829-1226725389.pngbaba Bbb ba bba ba ba ba ba b aab bbb ba aaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb baaaaaaaaaaaaaaabbb aaabb2。 Aababaスタイルのものの大部分は01だと思いますが、これらは分割されており、Mossパスワードのみを考えることができるため、Mossパスワードに変更しようとします。次に、「a」を「」、「b」に「 - 」に変更し、get -.--を変更します。 - 。 --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --.-- --..-- --..-- --...-- --...............................1049983-20210806170740268-681316427.pngCONGRATULATIONSnullFLAGnull1NV151BL3M3554G34.変換:Flagnull後に内容を取り、Letterを小文字に変更し、フォーマットフラグ{1NV151BL3M3554G3}を下位ケースに変換します:Flag {1NV151BL3M3554G3}

8。 PDFのMOMOSパスワードSteganography

基本知識:1。一般的なファイルヘッドおよびファイルテール構造:1049983-20210806170741902-1525952640.jpgWRITEUP:1。この場所はファイルヘッダーを表し、65はflag.txtのファイルの終わりです。a83cは検証コードを表します。したがって、7cはブロックタイプを表します。ここでは、ブロックタイプはファイルヘッダーです。1049983-20210806170743092-590535828.png2。 7bを入力して、74。1049983-20210806170743710-1863320468.png3に変更してください。保存して減圧してから、Sercet.pngをWinHexに投げて、ファイルヘッダーがGIF画像であることを確認し、接尾辞名を.gifに変更します。

通常のファイルエンコードに関する知識は次のとおりです。

JPG画像開始フラグ:FF D8エンドフラグ:FF D9

GIF画像開始フラグ:47 49 46 38 39 61エンドフラグ:01 01 00 3B

1049983-20210806170744364-828635658.png

1049983-20210806170745940-1299064485.png4。接尾辞名を.gifとして変更し、Stegsolveのフレームブラウザを使用して2つの写真に分解し、左と右の矢印を使用してレイヤーを選択してQRコードを分離して2つの不完全なQRコードを取得します。

1049983-20210806170746500-987564971.png

5。質問から、二重層の絵であることがわかります。 PSを使用して分離されたレイヤーを開き、保存します

(特定の手順:レイヤーをクリックします - レイヤーをコピー - OK、次にファイルをクリック - 保存- 保存)

1049983-20210806170747009-1082782632.png

1049983-20210806170747490-10134175.pngPSフルQRコード、スキャンしてフラグを取得する:flag {yanji4n_bu_we1shi}

6.オンラインPSツール:https://www.uupoop.com/ps/?hmsr=ps_menu(——色の範囲を選択し、1が表示できるQRコードに色域を調整してからスプライスします)

1049983-20210806170748147-136776722.png

9。破損したRARファイルのGIFステガノグラフィ

基本知識:1。ソースファイルデータ領域を圧縮します:

quqmjppiykq7564.png

50 4b 03 04:これはヘッダーファイルタグ(0x04034b50)です

14 03:ファイルの減圧の必要なpkwareバージョン

00 00:グローバルモードビットマーク(暗号化があるかどうかを判断するための重要なマーク)

08 00:圧縮方法

68 BF:最後の変更されたファイル時間

9b 48:最終変更されたファイル日付

Fe 32 7d 4b:CRC-32検証

E9 0D 00 00:圧縮後のサイズ

B5 1B 00 00:圧縮されていないサイズ

09 00:ファイル名の長さ

00 00:拡張レコード長

2。ソースファイルディレクトリ領域を圧縮します。

flk0miuyywj7565.png

50 4b 01 02:ディレクトリのファイルヘッダータグ(0x02014b50)

3F 03:圧縮に使用されるPKwareバージョン

14 03:ファイルの減圧の必要なpkwareバージョン

00 00:グローバルモードビットマーク(暗号化に重要な兆候があるかどうか、この変更はここで擬似暗号化のために行われ、09 00に変更して開きます。パスワードがあることが促されます)

08 00:圧縮方法

68 BF:最後の変更されたファイル時間

9b 48:最終変更されたファイル日付

Fe 32 7d 4b:CRC-32検証(1480b516)

E9 0D 00 00:圧縮サイズ(25)

B5 1B 00 00:圧縮されていないサイズ(23)

09 00:ファイル名の長さ

24 00:拡張フィールド長

00 00:ファイルコメントの長さ

00 00:ディスク開始番号

00 00:内部ファイル属性

20 80 ED 81:外部ファイル属性

00 00 00:ローカルヘッドオフセット

圧縮ソースファイルディレクトリエンドフラグ:

dl5grzx0c2i7566.png

50 4b 05 06:ディレクトリエンドタグ

00 00:現在のディスク番号

00 00:ディレクトリ領域はディスク番号を開始します

01 00:このディスクに記録された総数

01 00:カタログエリアの合計記録

5B 00 00 00:ディレクトリエリアサイズ

10 0E 00 00:ディレクトリ領域の最初のディスクへのオフセット

00 00:zipファイルコメントの長さ

次に、真と偽の暗号化を特定します

1.暗号化なし

圧縮されたソースファイルデータ領域のグローバル暗号化は00 00でなければなりません

圧縮ソースファイルディレクトリ領域のグローバルビットマークは00 00でなければなりません

2。偽の暗号化

圧縮されたソースファイルデータ領域のグローバル暗号化は00 00でなければなりません

圧縮ソースファイルディレクトリ領域のグローバルビットマークは09 00でなければなりません

3。真の暗号化

圧縮されたソースファイルデータ領域のグローバル暗号化は09 00でなければなりません

圧縮ソースファイルディレクトリ領域のグローバルビットマークは09 00WRITEUP:でなければなりません

1.グローバルな問題は00 00ですが、最後には09 00であるため、偽の暗号化です。 09 00から00 00を変更すると、ファイルを減圧して開くことができます。

1049983-20210806170749843-1584408947.png2。 zipcenop.jarツールjava-jarzipcenop.jarrxxx.zip 1049983-20210806170750265-791968010.pngを介してそれを復号化します。 TXTファイルを開くと、Base64パスワードがたくさん表示されますu3rlz2fub2dyyxboesbpcyb0agugyxj0igfuzcbzy2llbmnlig9mihdyaxrpbmcgaglkzgvuig1lc3nhz2vzigluihn1y2ggysb3yxk gdghhdcbubybvbmv=lcbhcgfydcbmcmcm9tihrozsbzzwkzxigyw5kigludgvuzgvkihjly2lwawvudcwgc3vzcgu=y3rzihrozsbleglgl zdgvuy2ugb2ygdghlig1lc3m=ywdllcbhigzvcm0gb2ygc2vjdxjpdhkgdghyb3vnacbvynnnjdxjpdhkuifs=agugd29yzcbzdgvn. yzwvrig9yawdpbibhbmqgbwvhbnmgimnvbmnlyw==bgvkihdyaxrpbmciigzyb20gdghliedyzwvrihdvcmrzihn0zwdhbm9zig1lyw5pbmcgimnvdmvyzwqgb3ig chjvdgvjdgvkiwgyw5kigdyyxbozwluig1lyw5pbmcginrvihc=cmml0zsiuifrozsbmaxjzdcbyzwnvcmrlzcb1c2ugb2ygdghlihrlcm0d2ffzigluide0otk gynkgsm9oyw5uzxmgvhjpdghlbwl1cybpbiboaxmgu3rlz2fub2dboawesigdhjlyv==dglzsbvvbibjcnlwdg9ncmfwahkgyw5kihn0zwdhbm9ncmfwhkggz glzz8==dwlzzwqgyxmgybibib29rig9uig1hz2ljlibhzw5lcmfsbhksig1lc3p=ywdlcyb3awxsigfwcgvhcib0bybizsbzb21ldghpbmcgzwxzogaw1hz2vzlc bhcnrpy2xlcywgc2hvchbpbmcgbglzdhmsig9yihnvbwugb3r=agvyignvdmvydgv4dcbhbmqsignsyxnzawnhhbgx5lcb0agugaglkzgvuig1lc3nhz2ugbwf5igj