решения задач по tinkoff CTF – Telegram
решения задач по tinkoff CTF
1.23K subscribers
29 photos
14 files
35 links
Здесь будут скидываться райтапы по заданиям по Tinkoff CTF.

Райтапы от других людей тоже приветствуются, по ним писать в ЛС: @EvgenyKurmysa
Download Telegram
Forwarded from Сергей Руденко ☭Серп☭
#капибады

в интернете находим сайт КапиПродай, на нем нет ни какой информации
Начинаем искать в интернете по запросу: "Капибады с КапиПродай" и находит канал в тг с озывами
На одной из фотографий видим надпись что писать надо на основной аккаунт.
изучив аккаунт по фотографии в яндексе(по обоям и картинам) находим подходящее помещение, на фото смотрим что за помещение, и копируем его координаты. Вставляем их на сайт капиполиции и задача решена
💯21🔥1
Forwarded from Modal
Banner.rar
194.1 KB
Но вот этим я прям горжусь. НЕ в плане что собой - скорее тем, что смог на пару с гпт это написать - вышло шикарно)
1💯1
Forwarded from weakly
#Капибартер
просто распаковываешь ipa как zip, далее бинарник закидываешь в ida, открываешь debugpanel видишь там
v22 = self;
v21[1] = (id)a2;
NSLog(&CFSTR("This function available only in Debug mode. Tap 5 times in the down right corner to enable it.").isa);
v21[0] = objc_retain(CFSTR("support"));
v20 = objc_retain(CFSTR("th1sisv3rys3cretP@55w0rD"));
v19 = objc_retainAutoreleasedReturnValue(
+[NSURL URLWithString:](
&OBJC_CLASS___NSURL,
"URLWithString:",
CFSTR("https://t-barter-3zrm60ot.spbctf.org/api/v2/auth")));
идешь логинишься, получаешь флаг
💯21
Forwarded from Modal
А ещё задачка с тикетами на парковке:
Смотрим barcode, видим там структуру: number%plate%date

Если с plate и date все ясно, то что за номер - хз, пробуем генерировать (много онлайн генераторов штрих кодов) и скармливать сайту разные коды, видим что меняется тип билета на 2 - earlybird, например. И так доходим до vip, который просит код. А у нас, между прочим и есть задание - найти этот код. Смотрим source и видим, что там всего 9 типов билетов, и последний из них - debug. Дальше, перебором понимаем, что мы имеем структуру ticket_type%plate%date%payload

И перебором понимаем, что мы можем исполнять shell команды. В итоге рекурсивно выводим содержимое файлов и находим искомы ключ
2
Forwarded from Сергей Руденко ☭Серп☭
Капиборд.py
5.4 KB
#Капибаннер

на сайте получил исходную строки и строки по тз, а так же понял правила инвертирования светодиодов по строке и столбцу, написал( без помощью гпт не обошлось) питон-код и он мне вывел на какие светодиоды нажимать, далее протыкал в ручную(можно было как то упростить себе жизнь, но стало лень)
1💯1
Forwarded from Yura
#Капибартер
в файле capibarter-3 внутри архива находим человекочитаемые строчки, из которых понятно, что нужно сходить на /api/v1/auth
там вводим support:th1sisv3rys3cretP@55w0rD и получаем флаг, нажав на любую машину из Либерти-Каписити
2👌1
Forwarded from Сергей Руденко ☭Серп☭
#Капибургер

перехватывал отправляемые запросы и увидел что у каждого передаются определенные уникальные значения, скопировал уникальное значение флага, заказал Капибургер, там есть бесплатная позиция, при отправке на покупку перехватил и изменил в запросе значение бесплатной позиции на ун.номер флага. готово
👍3💯31
Forwarded from Roman
капибездна с брутом на видеокарте
🤯4
Forwarded from Roman
5 минут
1
Forwarded from Roman
по сорцам ld / bfd найти как считается buildid и сбрутить,
1
Forwarded from Сергей Трифонов
Капибашня

1. Изучаем код, понимаем, что единственный способ получить флаг — поднять привилегии до администратора.
2. Находим зарегистрированную в SQLite функцию
func setRole(targetUserID, currentUserID int64, role models.Role) (bool, error)


3. Видим, что можно в качестве источника данных для импорта пользователей использовать БД SQLite.
4. Создаём БД malicious.db:
- в ней таблицу users (одного id хватит)
- добавляем единственную запись в таблицу
- и создаём view:
CREATE VIEW users AS 
SELECT setRole(%MY_USER_ID%, 1, 1) AS username, 1 AS card_id, 1 AS role, 1 AS password FROM test;

Загружаем файл, получаем администратора и флаг.
🔥52
Forwarded from Marat
Капитальный ремонт

Веб-интерфейс позволяет отправить показания счетчиков, которые считываются с картинки через OCR.

Это потенциальное место для SQL-инъекции. Посмотрев структуру БД и место, куда вставляется нефильтруемое значение счетчика, отправляем такую картинку, которая запишет в показание счетчика значение адреса из аккаунта мэра Капибаровска с id=1.
1🔥1
Forwarded from Anton
КапИИбара (capaibar) writeup
1. Подключаемся, выбираем Ника Капифьюри, выбираем "Получить ключ переписки"

Ключ переписки kp = k ^ Hash(secret|random) (secret - хранится в секрете, а random - каждый раз разный), где каждый байт гаммы получается с помощью вызова __hash__() класса Gamma. __hash__() никогда не возвращает -1, поэтому k[i] точно не равен kp[i]^0xFF.

2. Для каждого байта ключа k[i] создаем массив возможных байт, запрашиваем постоянно ключ переписки и исключаем из массива байт kp[i] ^ 0xFF. Когда для каждого k[i] останется один элемент в списке получаем итоговый ключ k

3. С помощью k шифруем сообщение "Hello, flag plz" и отправляем Нику Капифьюри. Получаем шифрованный флаг и расшифровываем.

Важно сохранять сессию и не отключаться, так как ключ генерится при старте приложения.
❤‍🔥2🔥21