PACTF2018 (1 round)

BadBlackHat

Platinum
05.02.2017
217
305
BIT
9
Тема создана для writeups тасков которые мы успешно сдали, просьба всем кто сдавал отписаться сюда.
 

BadBlackHat

Platinum
05.02.2017
217
305
BIT
9
Таск Open Sourcery 2018 Solved — 30
Судя по описанию нам необходимо обратиться в прошлогоднему Ctf. Находим подходящий writeups . Переходим по ссылке и поиском находим флаг.

pactf-flag-4boxdpa21ogonzkcrs9p.com
 
  • Нравится
Реакции: IioS и n01n02h

Debug

Red Team
07.07.2017
217
445
BIT
6
A Picture is a Thousand Words — 10

Нам дается картинка.
image.d25eefefc427.jpg
На ум сразу приходит мысль проверить на exiftool. После загрузки и просмотра данных замечаем строку - Artist: flag_is_DjKVIXXQRZZrrAd
1524464839102.png
 
  • Нравится
Реакции: Dr.Lafa, IioS и n01n02h

Debug

Red Team
07.07.2017
217
445
BIT
6
Straight From The Emperor — 10
Судя по описанию, мы имеем дело с шифром Цезаря, но к алфавиту нужно добавить цифры.
Идем на сервис .
Добавляем к алфавиту цифры и крутим счетчик смещения пока не получим что-то внятное.

1524465220176.png
 
  • Нравится
Реакции: IioS и n01n02h

sinner67

Green Team
24.03.2017
279
358
BIT
0
Beats by Dr.K 55

TaskBeats by DrK_1.png


В задании нам дано некоторый звуковой файл wav формата.
В подсказке нам говорят "послушай какждый бит"... хммм...
Первое что я делаю, когда вижу wav файл - это испытываю непреодолимое желание посмотреть на него через какой нибудь визуалайзер.
Чаще всего пользуюсь Sonic Visualiser(не реклама :)).
И так, запускаем, открываем и видим:
TaskBeats by DrK_2.png

Сразу бросается в глаза тот факт, что у нас есть последовательность затухающих и возрастающих звуков. Наводит на мысли про 0 и 1
Давай наложим слой спектрограммы и посмотрим повнимательнее:

TaskBeats by DrK_3.png

Вот тут уже лучше видно и наше предположение становится более весомым.
Начинаем считать так, как показано на рисунке:
TaskBeats by DrK_4.png

выделения для наглядности, что бы не слипались(так то считать надо, темная 0 светлая 1)
Получается бинарная последовательность которую с легкостью преобразуем в флаг.
0110011001101100011000010110011101101001011100110111000001100001
0110001101110100011001100110110101110101011100110110100101100011
TaskBeats by DrK_5.png
 

Вложения

  • TaskBeats by DrK_3.png
    TaskBeats by DrK_3.png
    349,6 КБ · Просмотры: 571
Последнее редактирование:

sinner67

Green Team
24.03.2017
279
358
BIT
0
Who Said It 25
Who Said It_1.png

По описанию нам дано что то связанное с PGP(здарвствуйте КЭП:))
Погуглив что конкретно нам дано, я пришел к выводу что это результат прозрачно подписанного документа
с цифровой подписью в формате ASCII(Если я не правильно понял, прошу знающих отписать)
Так же выяснил что с помощью утилиты pgpdump можно получить key id публичного ключа.
Делаем следующее:
Запихиваем содержимое таска в файл с форматом .asc
Качаем pgpdump:
Код:
apt-get install pgpdump
И получаем key id:
Код:
pgpdump proba.asc
Далее идем на кей сервер, о чем говорит нам подсказка.
Вводим id и получаем флаг:)

(картинки добавлю вечером, кали нет под рукой)
 
  • Нравится
Реакции: IioS, Vertigo и n01n02h
N

n01n02h

Security Through Obscurity? 50
Выделение_002.png

Гуглим любое слово и находим страницу на где есть вот такой алфавит
Выделение_004.png
Пишем простой скрипт на python
#!/usr/bin/python3

text = "Tązhii, Łį́į́ʼ, Dzeeh Mąʼii, Dibé yázhí, Wóláchííʼ, Tłʼízí Tin, Dibé Mósí, Łį́į́ʼ, Dzeeh, Dibé, Tązhii, Dzeeh, Gah, Neeshchʼííʼ, Dzeeh, Béésh dootłʼizh"

di = {}

di['A'] = "Wóláchííʼ"
di['B'] = "Shash"
di['C'] = "Mósí"
di['D'] = "Bįįh"
di['E'] = "Dzeeh"
di['F'] = "Mąʼii"
di['G'] = "Tłʼízí"
di['H'] = "Łį́į́ʼ"
di['I'] = "Tin"
di['J'] = "Téliichoʼí"
di['K'] = "Tłʼízí-yázhí"
di['L'] = "Dibé-yázhí"
di['M'] = "Naʼastsʼǫǫsí"
di['N'] = "Neeshchʼííʼ"
di['O'] = "Néʼéshjaaʼ"
di['P'] = "Bisóodi"
di['Q'] = "kʼaaʼ yeiłtįįh"
di['R'] = "Gah"
di['S'] = "Dibé"
di['T'] = "Tązhii"
di['U'] = "Nóódaʼí"
di['V'] = "Akʼehdidlíní"
di['W'] = "Dlǫ́ʼii"
di['X'] = "Ałnáʼázdzoh"
di['Y'] = "Tsáʼásziʼ"
di['Z'] = "Béésh dootłʼizh"

di['1'] = "tʼááłáʼí"
di['2'] = "naaki"
di['3'] = "tááʼ"
di['4'] = "dį́į́ʼ"
di['5'] = "ashdlaʼ"
di['6'] = "hastą́ą́"
di['7'] = "tsostsʼid"
di['8'] = "tseebíí"
di['9'] = "náhástʼéí"
di['0'] = "ádin"
di['0'] = "názbąs"

# print(di)

text = text.replace(" yázhí","-yázhí")

for c,a in di.items():
text = text.replace(a,c)

text = text.replace(" ",'')

print(text)
и получаем в итоге T,H,EF,L,A,GI,SC,H,E,S,T,E,R,N,E,Z
Флаг CHESTERNEZ
 

Вложения

  • 1524474040650.png
    1524474040650.png
    23,3 КБ · Просмотры: 533

sinner67

Green Team
24.03.2017
279
358
BIT
0
Security Through Obscurity? 50
Посмотреть вложение 17846
Гуглим любое слово и находим страницу на где есть вот такой алфавит
Посмотреть вложение 17847
Пишем простой скрипт на python
#!/usr/bin/python3

text = "Tązhii, Łį́į́ʼ, Dzeeh Mąʼii, Dibé yázhí, Wóláchííʼ, Tłʼízí Tin, Dibé Mósí, Łį́į́ʼ, Dzeeh, Dibé, Tązhii, Dzeeh, Gah, Neeshchʼííʼ, Dzeeh, Béésh dootłʼizh"

di = {}

di['A'] = "Wóláchííʼ"
di['B'] = "Shash"
di['C'] = "Mósí"
di['D'] = "Bįįh"
di['E'] = "Dzeeh"
di['F'] = "Mąʼii"
di['G'] = "Tłʼízí"
di['H'] = "Łį́į́ʼ"
di['I'] = "Tin"
di['J'] = "Téliichoʼí"
di['K'] = "Tłʼízí-yázhí"
di['L'] = "Dibé-yázhí"
di['M'] = "Naʼastsʼǫǫsí"
di['N'] = "Neeshchʼííʼ"
di['O'] = "Néʼéshjaaʼ"
di['P'] = "Bisóodi"
di['Q'] = "kʼaaʼ yeiłtįįh"
di['R'] = "Gah"
di['S'] = "Dibé"
di['T'] = "Tązhii"
di['U'] = "Nóódaʼí"
di['V'] = "Akʼehdidlíní"
di['W'] = "Dlǫ́ʼii"
di['X'] = "Ałnáʼázdzoh"
di['Y'] = "Tsáʼásziʼ"
di['Z'] = "Béésh dootłʼizh"

di['1'] = "tʼááłáʼí"
di['2'] = "naaki"
di['3'] = "tááʼ"
di['4'] = "dį́į́ʼ"
di['5'] = "ashdlaʼ"
di['6'] = "hastą́ą́"
di['7'] = "tsostsʼid"
di['8'] = "tseebíí"
di['9'] = "náhástʼéí"
di['0'] = "ádin"
di['0'] = "názbąs"

# print(di)

text = text.replace(" yázhí","-yázhí")

for c,a in di.items():
text = text.replace(a,c)

text = text.replace(" ",'')

print(text)
и получаем в итоге T,H,EF,L,A,GI,SC,H,E,S,T,E,R,N,E,Z
Флаг CHESTERNEZ
ниче се))) я бы поленился бы скрипт писать))
 

Dr.Lafa

Green Team
30.12.2016
507
1 050
BIT
0
Credit Card Leak
Нам дают текстовый файл с "валидными" кредитными картами и одной невалидной, которую нужно найти. Валидность карты проверяется по алгоритму Luhn, реализация которого есть на питоне:
Python:
# сначала устанавливаем либо, естественно, pip3 install luhn
from luhn import verify
for line in open("cc_leak.txt.eecc6f896436"):
     code = line.replace("\n","")
     if verify(code):
             print("[-] "+code)
     else:
             print("[+] "+code)
             break
1524503415702.png


Bad Melody
Импортируем midi-файл в audacity или любой другой редактор звука, поддерживающий midi-файлы. Флаг "нарисован"
1524503508434.png
 
Последнее редактирование:
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!