1. 程式人生 > 實用技巧 >十三屆全國大學生資訊大賽+強網杯+DASCTF八月V&N出題賽-刷題筆記

十三屆全國大學生資訊大賽+強網杯+DASCTF八月V&N出題賽-刷題筆記

菜鳥的自白:

剛開始我還不知道什麼是CTF到了大學,有學長帶起,慢慢的步入這個信安大世界,我從基礎小白,到現在入門小菜鳥,我覺得學習CTF,可以鍛鍊自己寫指令碼,看bug,學滲透,不斷的充實自己,這次這3個比賽,真的讓我發現,自己還是很菜鳥,需要繼續鍛鍊,然後各位加油!下載檔案猛如虎,一看戰績0-5,太難了。QWQ

第十三屆全國大學生資訊保安競賽

the_best_Ctf_game

放入winhex裡面就能看到flag

把他複製出來,刪除多餘的東西,就有了flag了

flag{65e02f26-0d6e-463f-bc63-2df733e47fbe}

電腦被黑

放入取證大師中找到被刪除檔案

開啟一看是某種加密

然後使用binwalk分離一下發現了3樣子東西

發現demo裡面是一個檔案加密程式,我們反編譯一下

#include <iostream>
#include <stdio.h>
using namespace std;
int main(int argc, char *argv[]) {
	 int result; // eax
		char v4; // [rsp+1Dh] [rbp-13h]
		char v5; // [rsp+1Eh] [rbp-12h]
		char v6; // [rsp+1Fh] [rbp-11h]
		FILE *v7; // [rsp+20h] [rbp-10h]
		FILE *stream; // [rsp+28h] [rbp-8h]
		v4 = 34;
		v5 = 0;
		v7 = fopen("flag.txt", "rb");
			stream = fopen("flag.txt", "rb+");
			if ( stream )
			{
				while ( 1 )
				{
					v6 = fgetc(v7);
					if ( v6 == -1 )
						break;
					fputc((v6 ^ v4) - v5, stream);
					v4 += 34;
					v5 = (v5 + 2) & 0xF;
				}
				fclose(v7);
				fclose(stream);
				result = 0;
			}
			else
			{
				printf("cannot open file", "rb+", argv);
				result = 0;
			}
		return result;
}

  

就得到了flag

flag{e5d7c4ed-b8f6-4417-8317-b809fc26c047}

第四屆“強網杯”全國網路安全挑戰賽

主動

開啟一看發現了system,那就說明可以執行linux程式碼指令

我們先使用一下ls檢視一下又什麼檔案然後發現了flag.php
然後試一下使用cat flag.php 不行,給攔截了,那我就換成cat *.php
就成功了

?ip=%0a cat *.php

upload

下載檔案發現是檔案分析題目

老規矩追溯一下tcp然後發現了一個圖片

匯出來還挺騷

重點來了就是他的圖片名字,就是一個隱寫名字

弱密碼試試就成功了密碼123456

還好手快,搶了題目,到這裡為止發現了這個就是PWN杯!!!!太欺負人了

DASCTF 八月浪漫七夕戰

雙重圖格

下載檔案,我們首先檢查一下xls,裡面是否又夾帶
裡裡外外看了一次,就發現了一個東西

給他加上外衣

就看的很清楚了Insert:OFF5ET 28354h這個詞彙翻譯一下,就知道位移,在28345H 這個為止上面需要位移。

我們首先,讓如010裡面看,發現一個沒有識別的東西,我猜測應該是這個東西需要位移,應該是插入這個位置

插入之後發現,似乎還是沒什麼變化,然後在010中發現了
這個fdAT是什麼東西然後查一下,找到了APNG,他們說這個是很相似gif然後放入谷歌和火狐裡面就可以查看了

手快就行,然後發現這個點點,起初以為是哪個豬圈密碼,後門查一下,發現了是DotCode,也是一種二維碼,真的是長見識了大家可以瞭解一下DotCode|斐泰二維碼
然後,這裡就卡住了,然後多謝一個大佬,送的破解網址

密文1:U2FsdGVkX1/mLyhDqehTlmxmPoamVfr7h1El3iWRVvuJQodh1HvxMeQ2F8lgHfXzq70N4U/ZcjYtjLbXE8HRmw==

然後接下來就是破解key.jpg 當時嘗試了很多jpg的加密都不對,然後這個二維碼掃描不出來

然後拖入010覺得很奇怪

首先刪除一個頭看看

刪除頭1 ,就獲得了這個然後這個很明顯就是二維碼還沒有結合
使用PS,進行修復把類似參考這個
我們首先把2個圖片何在一起
我可真實二維碼修復第一人哈哈哈,這裡因為他給的一個圖片有殘缺我送大家完好的
和大家說一下流程,首先2張圖片對在一起,比對首先先把下面沒有的,給取出來

然後就可以操作了,把除了紅框裡面的進行比對如果顏色深那就把他變成白色,如果淺色變成黑色,然後弄完之後,在加上這個底部進行合併,用魔棒工具取白色變成紅色,然後把黑色變成白色,在把紅色變成黑色,就成功了

金鑰1:apngisamazing

DASCTF{b12e6674e844486d20d24793809ae38a}

在xls發現了一個祕密
Ga1@xy師傅出的tql

eeeeeeeasyusb

這道題目和之前做的知識點就在一起了零寬度加密,本來是有網址的,現在似乎給攔截了
那拿出比賽的時候的圖把

nut翻譯一下就是堅果
https://www.jianguoyun.com/p/DYcbU-gQz_TZCBjh8rID 這個則是密碼JmTjTw
然後下載下來,發現2個都是usb資料流量包,我推薦參考這個文章做
https://www.cnblogs.com/ECJTUACM-873284962/p/9473808.html
不過不太準確需要後期修改,
我們先把usb的資訊提取出來

tshark -r part1.pcapng -T fields -e usb.capdata >data1.txt
tshark -r part2.pcapng -T fields -e usb.capdata >data2.txt

這邊,我卡了很久,應為他的指令碼都很有問題,然後技能尚淺,所以指令碼有點不太會改
我這邊推薦一個師傅的部落格大家可以看一下
http://www.fzwjscj.xyz/index.php/archives/38/#eeeeeeeasyusb
在這個師傅這個裡邊學邊敲,還是很方便的,我建議可以儲存一波,然後我這邊送大家一個畫圖的指令碼把

#!/usr/bin/python
# coding: utf-8
import matplotlib.pyplot as plt
import numpy as np
import matplotlib as mpl
 
mpl.rcParams['font.family'] = 'sans-serif'
mpl.rcParams['font.sans-serif'] = 'NSimSun,Times New Roman'
 
x, y = np.loadtxt('res.txt', delimiter=' ', unpack=True)
plt.plot(x, y, '*', label='Data', color='black')
 
plt.xlabel('x')
plt.ylabel('y')
plt.title('Data')
plt.legend()
plt.show()

  

然後就有圖了

推薦反一下看:166433882cd04aaa
在然後分析第二個檔案,第二個檔案很明顯就少很多資訊,就應該是鍵盤了,然後鍵盤指令碼,我自己碼,把虛擬機器碼炸了,太恐怖了,我太菜了
然後還是哪裡哪個師傅的指令碼,存了,感謝師傅

output :n056<F2><F2><F2><F2><F3><F2><F2><F2><F3><F3>4<F2><F2><F2><F2><F2><F2><F2><F2><F3><F3>29<F2><F2><F2><F2><F3><F2><F2><F2><F2><F3>522<F2><F2><F2><F2><F3>

然後這個這種東西當時看,還以為是莫斯,然後發現數量對不上,最後後知後覺的發現了是培根加密

056bd4ad29bb522b

最終flag是:166433882cd04aaa056bd4ad29bb522b

參考文獻

這裡由衷的感謝這位師傅,讓我沒卡住!
師傅1:http://www.fzwjscj.xyz/index.php/archives/38/
師傅2:https://www.cnblogs.com/ECJTUACM-873284962/p/9473808.html