금요일, 09 4 2021, 16:00 UTC — 일요일, 11 4 2021, 16:00 UTC
[Forensics]
git clone을 한 후 디렉터리를 확인해 보면 flag.txt파일이 있다.
하지만 파일 안에는 아무것도 적혀있지 않다.
git branch -r
원격 저장소의 branch 정보를 보여 준다.
origin/!flag가 있다.
git checkout [원격 저장소의 branch 이름]
해당 branch로 이동할 수 있다.
다시 flag.txt파일을 확인해보면 플래그가 적혀있다.
Flag : RS{git_is_just_a_tre3_with_lots_of_branches}
pdf를 보면 4페이지에 검은색으로 무언가를 가려놓았다.
드래그를 해도 아무것도 나오지 않아 이미지인가 싶어 foremost로 확인해보았다.
>> foremost BIRDTHIEF_FYSA.pdf
Flag : RS{Make_sure_t0_read_the_briefing}
InceptionCTFRITSEC.7z 압축을 풀면 Reality.7z파일이 나온다.
또 압축을 풀게 되면 Subconscious.txt파일과 VanChase.7z파일이 있다.
Flag : RITSEC{Dreamland}
Inception CTF : Dream2
225
Unfortunately, the subconscious isn’t enough for this mission, we have to kidnap Fischer we need to go further into the system of the mind. Use the flag found to edit the PowerShell script, entering the Flag in line three in-between the single quotes. Run the PowerShell script and wait for it to complete its actions.
VanChase.7z파일에 암호는 첫번째 플래그이다.
pw = Dreamland
압축을 풀면 Kicks.ps1파일과 Kidnap.txt파일, TheHotel.7z파일이 나온다.
hex to ascii
Flag : RITSEC{WaterUnderTheBridge}
Inception CTF : Dream3
200
While the first two steps were easy it’s all hard from here on out, ThePointMan is the most crucial role of the mission he has to be presentable but without giving away our intentions. Use Alternate Dream State to find the flag before the kick.
TheHotel.7z파일의 암호는 이전 플래그이다.
pw =WaterUnderTheBridge
압축을 풀면 ThePointMan.txt파일과 SnowFortress.7z파일 그리고 이름이 없는 txt파일이 있다.
여기에는 디코딩을 해보아도 패스워드가 보이지 않는다.
base64문자열이 보인다.
디코딩을 해보면 hex값이 나온다.
Flag : RITSEC{F@!!ingElev@tor}
Inception CTF : Dream4
200
Don’t lose yourself within the dreams, it’s critical to have your totem. Take a close look at the facts of the file presented to you. Please note the flag is marked with an “RITSEC=” rather than {} due to encoding limitations.
SnowFortress.7z파일의 패스워드는 F@!!ingElev@tor이다.
압축을 풀면 Limbo.7z파일과 PasswordPath.exe파일이 있다.
strings PasswordPath.exe
스크립트 속 hex값을 디코딩 하면 아래와 같은 html 문자열이 나온다.
<html>
<body>
<!DOCTYPE html>
<html>
<head>
<title>Non, je ne regrette rien</title>
<HTA:APPLICATION
APPLICATIONNAME="Non, je ne regrette rien"
ID="Inception"
VERSION="1.0"
SCROLL="no"/>
<style type="text/css">
</head>
<div id="feature">
<div id="content
</style>
<h1 id="unavailable" class="loading">Building Dreams....</h1>
<script type="text/javascript" language="javascript">
function RunFile() {
WshShell = new ActiveXObject("WScript.Shell");
WshShell.Run("notepad %USERPROFILE%/Desktop/InceptionCTF/Reality/VanChase/TheHotel/ThePointMan.txt", 1, false);
}
</script>
</div>
</div>
<body>
<input type="button" value="Implant Inception Here" onclick="RunFile();"/>
<p style="color:white;">
-.. .-. . .- -- ...
..-. . . .-..
.-. . .- .-..
.-- .... . -.
.-- . .----. .-. .
.. -.
- .... . -- .-.-.-
.. - .----. ...
--- -. .-.. -.--
.-- .... . -.
.-- .
.-- .- -.- .
..- .--.
- .... .- -
.-- .
.-. . .- .-.. .. --.. .
... --- -- . - .... .. -. --.
.-- .- ...
.- -.-. - ..- .- .-.. .-.. -.--
... - .-. .- -. --. . .-.-.-
.-. .. - ... . -.-. -...- -.. .. ...- . .-. ... .. --- -.
</p>
</body>
</body>
</html>
모스부호를 디코딩 하면 플래그가 나온다.
Flag : RITSEC{DIVERSION}
Inception CTF : Dream5
200
We’re almost there, we just need Fischer to open the safe! That top looks awfully weird though.
Limbo.7z파일의 패스워드는 DIVERSION
압축을 풀면 Inception.jpg파일이 있다.
뭔가 사진이 깨진 것 같다. 파이썬 픽셀 문제는 아닌 것 같다.
strings 명령어로 확인해보면 아래 base64문자열이 보인다.
Flag : RITSEC{528491}
Please_Click_all_the_Things.7z파일 압축을 풀면 Please_Click_all_the_Things.msg파일이 있다.
strings로 확인해보면 중간에 엄청 긴 hex값이 보인다.
<html>
<body>
<!DOCTYPE html>
<html>
<head>
<title>Its just another friendly file from you're local CTF</title>
<style type="text/css">
html {
height: 100%;
width: 100%;
}
#feature {
width: 980px;
margin: 95px auto 0 auto;
overflow: auto;
}
#content {
font-family: "Segoe UI";
font-weight: normal;
font-size: 22px;
color: #ffffff;
float: left;
width: 460px;
margin-top: 68px;
margin-left: 0px;
vertical-align: middle;
}
#content h1 {
font-family: "Segoe UI Light";
color: #ffffff;
font-weight: normal;
font-size: 60px;
line-height: 48pt;
width: 980px;
}
p a, p a:visited, p a:active, p a:hover {
color: #ffffff;
}
#content a.button {
background: #0DBCF2;
border: 1px solid #FFFFFF;
color: #FFFFFF;
display: inline-block;
font-family: Segoe UI;
font-size: 24px;
line-height: 46px;
margin-top: 10px;
padding: 0 15px 3px;
text-decoration: none;
}
#content a.button img {
float: right;
padding: 10px 0 0 15px;
}
#content a.button:hover {
background: #1C75BC;
}
/* loading dots */
.loading:after {
content: '.';
animation: dots 1s steps(5, end) infinite}
@keyframes dots {
0%, 20% {
color: rgba(0,0,0,0);
text-shadow:
.25em 0 0 rgba(0,0,0,0),
.5em 0 0 rgba(0,0,0,0);}
40% {
color: white;
text-shadow:
.25em 0 0 rgba(0,0,0,0),
.5em 0 0 rgba(0,0,0,0);}
60% {
text-shadow:
.25em 0 0 white,
.5em 0 0 rgba(0,0,0,0);}
80%, 100% {
text-shadow:
.25em 0 0 white,
.5em 0 0 white;}}
</style>
</head>
<body bgcolor="#00abec">
<div id="feature">
<div id="content">
<h1 id="unavailable" class="loading">Try Harder</h1>
<p id="tryAgain" class="loading">The Defender That Could</p>
</div>
</div>
</body>
<head>
<flag="UklUU0VDe0gzcjMhdCEkfQ==">
</body>
</html>
디코딩 하면 제일 하단에 base64문자열이 보인다.
Flag : RITSEC{H3r3!t!$}
[Crypto]
Flag : RS{WTCHIMTTIONGAMEISWRTH}
[web]
문제에서 주어진 경로 뒤에 robots.txt를 입력하여 확인해보면 base64 문자열을 볼 수 있다.
Flag : RS{R0bots_ar3_b4d}
'#CTF 2021' 카테고리의 다른 글
DCTF 2021 write up (0) | 2021.05.17 |
---|---|
UMDCTF 2021 write up (0) | 2021.04.19 |
Shakti CTF 2021 write up (0) | 2021.04.05 |
Tenable CTF 2021 write up (0) | 2021.02.23 |
SecureBug CTF 2021 write up (0) | 2021.02.19 |