Сейчас на форуме: vasilevradislav (+2 невидимых) |
![]() |
eXeL@B —› Оффтоп —› Buffer overflow levels |
Посл.ответ | Сообщение |
|
Создано: 22 июня 2009 10:50 · Личное сообщение · #1 Недавно на работе был тренинг по secure кодингу. так вот там после прохождения темы переполнений дали 12 тестиков, для закрепления результатов так сказать. каждый тест(этап) представляет собой маленькую прожку в которой есть ошибка, которой можно воспользоваться сделав переполнение. после этого вам предлагают перейти к след. этапу. в общем для тех у кого есть время, довольно интересные и не сильно сложные задачки для мозга ![]() ![]() ![]() |
|
Создано: 22 июня 2009 13:02 · Поправил: Coderess · Личное сообщение · #2 |
|
Создано: 22 июня 2009 18:57 · Личное сообщение · #3 |
|
Создано: 22 июня 2009 20:32 · Личное сообщение · #4 плохо что с исходниками ... есть тузлы , которые ищут переполнения по исходнику. В ехе искать чуть труднее , тоже есть бруты под это , именно заточенные. Как закрепление сойдет , но если искать переполнения уже в реальной проге или сервисе , то это всеравно уже несравнимо ИМХО ----- RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube ![]() |
|
Создано: 22 июня 2009 20:36 · Личное сообщение · #5 но если искать переполнения уже в реальной проге или сервисе , то это всеравно уже несравнимо ИМХО Ну почему-же, попадаются FTP-клиенты, в которых уязвимость level11 встречается на securityvulns.ru описание читал, думаю еще программисты не научились использовать безопасные эквиваленты функциям ----- Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes ![]() |
|
Создано: 23 июня 2009 12:27 · Поправил: cppasm · Личное сообщение · #6 Сложного ничего нету, пока зарешал первых шесть. Кто-нибудь может объяснить в чём прикол шестого уровня? Там никакие уязвимости и переполнения вообще не используются. Уровень чисто на знание местонахождения cmd.exe Как это к теме безопасного программирования относится не ясно. mak пишет: но если искать переполнения уже в реальной проге или сервисе , то это всеравно уже несравнимо ИМХО Ничего подобного. Многие вещи как раз сложнее в исходнике искать - типа неявных приведений к int при вычислениях и т.д. В ассемблере такие вещи сразу видно. // Добавлено Решил всё. Восьмой прикольный и двенадцатый ![]() Кстати там есть глюки. ;) В смысле есть уровни, которые имеют вполне легальное решение без использования каких-либо уязвимостей. ![]() |
|
Создано: 24 июня 2009 11:30 · Поправил: RSI · Личное сообщение · #7 Isaev пишет: Ограничение по времени на все задания сколько было? ну 2 часа дали ![]() Кто-нибудь может объяснить в чём прикол шестого уровня? Там никакие уязвимости и переполнения вообще не используются. Уровень чисто на знание местонахождения cmd.exe Как это к теме безопасного программирования относится не ясно. ну тебе этот пример показывает что ты можешь прогу заставить открыть и другой файл. ежели c:\windows\system32\cmd.exe если скажем передашь ей параметр .. то уже можешь окрыть c:\cmd.exe ![]() |
|
Создано: 24 июня 2009 12:07 · Личное сообщение · #8 |
|
Создано: 24 июня 2009 14:01 · Поправил: cppasm · Личное сообщение · #9 RSI пишет: ну тебе этот пример показывает что ты можешь прогу заставить открыть и другой файл. ежели c:\windows\system32\cmd.exe если скажем передашь ей параметр .. то уже можешь окрыть c:\cmd.exe Как? Code:
Путь в любом случае должен начинаться с C:\WINDOWS\ и заканчиваться \cmd.exe При этом если этот файл существует - переходим на следующий уровень. cmd.exe как бы в системе в одном месте лежит. Т.е. передав ".." можно конечно и C:\Windows\..\cmd.exe открыть (он же C:\cmd.exe) НО УРОВЕНЬ ПРОЙТИ ЭТО НЕ ПОМОЖЕТ - ФАЙЛА C:\cmd.exe ТАМ ВЕДЬ НЕТУ. ![]() |
![]() |
eXeL@B —› Оффтоп —› Buffer overflow levels |