eXeLab
eXeL@B DVD 5D !

Видеокурс программиста и крэкера 5D НОВЫЙ
(актуальность: декабрь 2O17)
Свежие инструменты, новые видеоуроки!

  • 400+ видеоуроков
  • 800 инструментов
  • 100+ свежих книг и статей

УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: Medsft, alexcoder1, _MBK_ (+4 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Основной форум —› Модификация прошивки OpenWRT
Посл.ответ Сообщение
murder

Ранг: 6.0 (гость)
Статус: Участник

Создано: 5 января 2018 06:22 New!
· Личное сообщение · #1

Имеется образ OpenWRT. Нужно сменить MAC-адрес (через telnet не получится, т.к. squashfs - uci commit выдаёт I/O error, файл /etc/config/network открывается только для чтения). Файловую систему распаковал через 7-zip. Чем запаковать обратно? Пробовал mksquashfs с параметром xz - файл получается больше, чем оригинал.

Кроме того нужно поменять версию ПО, производителя и модель устройства - расположены в самом начале файла. После редактирования файл не проходит проверку. Тут назревает самый главный вопрос: по каким смещениям хранятся контрольные суммы и как их считать?
TryAga1n

Ранг: 187.9 (ветеран)
Статус: Участник

Создано: 5 января 2018 06:49 New!
· Личное сообщение · #2

http://192.168.1.1/ Справа сверху кликнуть Administration Network->Interfaces->Wlan wan->кнопка edit В поле -- Additional Field -- выбрать MAC-Address Кнопка [Add]

| Сообщение посчитали полезным: Gideon Vi

murder

Ранг: 6.0 (гость)
Статус: Участник

Создано: 5 января 2018 08:55 New!
· Личное сообщение · #3

Web-интерфейс там не стандартный.
TryAga1n

Ранг: 187.9 (ветеран)
Статус: Участник

Создано: 5 января 2018 09:07 New!
· Личное сообщение · #4

у тебя стоковая прошивка стоит же. ты сначала ВРТ залей, а потом уже дальше танцевать
murder

Ранг: 6.0 (гость)
Статус: Участник

Создано: 5 января 2018 09:15 · Поправил: murder New!
· Личное сообщение · #5

Так мне в стоковой надо поправить. Стоковая это и есть OpenWRT, только допиленная производителем. Когда через telnet на неё заходишь - видно приветствие OpenWRT.

Добавлено спустя 2 минуты
Вот сам девайс - ZISA op151S


Добавлено спустя 45 минут
Вывод binwalk
Code:
  1. 0        0x0      Copyright string: " 2000-2010 T&W. All rights reserved.rved."
  2. 1024     0x400    uImage header, header size: 64 bytes, header CRC: 0xFFCC4335, created: Thu Oct 23 10:41:47 2014, image size: 1184490 bytes, Data Address: 0x80002000, Entry Point: 0x80002000, data CRC: 0x46E9464C, OS: Linux, CPU: MIPS, image type: OS Kernel Image, compression type: lzma, image name: "OpenWrtLinux-3.10.12-svn24709"
  3. 1088     0x440    LZMA compressed data, properties: 0x5D, dictionary size: 8388608 bytes, uncompressed size: 3481980 bytes
  4. 1311232  0x140200 Squashfs filesystem, little endian, version 4.0, compression:lzma (non-standard type definition), size: 2354781 bytes,  727 inodes, blocksize: 262144 bytes, created: Tue May  9 11:47:50 2017

В первом килобайте тоже есть контрольная сумма и данные, которые нужно отредактировать, но binwalk их не распознал.
carver

Ранг: 36.8 (посетитель)
Статус: Участник

Создано: 5 января 2018 10:34 · Поправил: carver New!
· Личное сообщение · #6

привет.

а эта шняга с микротиком работает ?
а задешево бывает, или как на амазоне, 109 баксов + ship ?

а что на наге говорят ?
еще нет SFP программатора с поддержкой GPON ?
reversecode


Ранг: 963.9 (! ! !)
Статус: Участник

Создано: 5 января 2018 10:42 New!
· Личное сообщение · #7

если образ openwrt - значит нужно идти на сайт и форум openwrt
и еще здесь посмотреть http://www.lan23.ru/forum/forumdisplay.php?f=27
murder

Ранг: 6.0 (гость)
Статус: Участник

Создано: 5 января 2018 10:42 New!
· Личное сообщение · #8

С микротиком работает. Задёшево не видел.

Пытаюсь повторить опыт испанских братьев по разуму.

Добавлено спустя 1 час 20 минут
Продублировал на наге и на форуме OpenWRT.
carver

Ранг: 36.8 (посетитель)
Статус: Участник

Создано: 5 января 2018 14:16 New!
· Личное сообщение · #9

а что испанцы, морозятся ?

просто попроси пересобрать тебе прошивку.
обычно не отказывают же, и для них это проще, чем писать мануал.

если самому пересобирать, то кроме опенврт, нужно вникать в формат от ZISA,
хотя там вроде и не сложно, но если не разберешся,
и никто не поскажет, предложи на каком-то frelancer.com.
по идее, работа будет дешевлее чем этот SFP.
LinXP

Ранг: 68.0 (постоянный)
Статус: Участник

Создано: 5 января 2018 21:09 New!
· Личное сообщение · #10

carver пишет:
а задешево бывает, или как на амазоне, 109 баксов + ship ?

например https://www.olx.ua/obyavlenie/prodam-moduli-gpon-olt-c-huawei-i-zte-IDw4dro.html

| Сообщение посчитали полезным: carver

murder

Ранг: 6.0 (гость)
Статус: Участник

Создано: 11 января 2018 13:49 New!
· Личное сообщение · #11

На наге подсказали, что контрольная сумма подсчитывается где-то в недрах /usr/local/bin/web. На js подсчёт вызывается строчкой.
Code:
  1. xmlhttp.sendRequest("cgi/get_imgcrc" + parm, "", verifyImageResult);


Скачал IDA, открыл файл, поиском нашёл строку "cgi/get_imgcrc", точнее там таблица указателей на строки с разными cgi. Как теперь найти в каком месте кода идёт обращение к этой строке (Xrefs graph from ничего не даёт)?

Испанцы не отвечают.


{ Атач доступен только для участников форума } - web
LinXP

Ранг: 68.0 (постоянный)
Статус: Участник

Создано: 11 января 2018 19:05 · Поправил: LinXP New!
· Личное сообщение · #12

попробуй забить на проверку...
function verifyImageResult(s) {
ret = evalJSON(s);
if (ret == 1) {
burnImage();
} else {
burnImage();
}
}


https://d.radikal.ru/d23/1801/0d/d5db06034eff.png
похоже

| Сообщение посчитали полезным: murder

murder

Ранг: 6.0 (гость)
Статус: Участник

Создано: 12 января 2018 05:48 New!
· Личное сообщение · #13

LinXP
Отключать проверку не буду, чтобы не получить кирпич. За наводку на 00403DB0h спасибо - буду изучать. Кстати как ты вышел на этот код?

Добавлено спустя 53 минуты
Как нашёл код я понял - там массив структур в котором хранятся указатели на строки cgi и указатели на функции.

Добавлено спустя 2 часа 4 минуты
Потихоньку въезжаю в MIPS-ассемблер branch delay slot выглядит непривычно...

Похоже эта функция ничего толком не делает - она тупо выводит переменную g_CGIVerifyImageResult через printf. А так как g_CGIVerifyImageResult экспортируемая переменная, то она ведь может изменяться из другого процесса, я правильно понимаю?

Нашёл место, где обрабатывается массив строк - https://a.radikal.ru/a07/1801/f5/d2e34e3b034a.png

| Сообщение посчитали полезным: Rio

Rio

Ранг: 86.6 (постоянный)
Статус: Участник

Создано: 15 января 2018 22:42 New!
· Личное сообщение · #14

murder пишет:
Нашёл место, где обрабатывается массив строк - https://a.radikal.ru/a07/1801/f5/d2e34e3b034a.png

на правильном пути человек?
murder

Ранг: 6.0 (гость)
Статус: Участник

Создано: 16 января 2018 06:52 · Поправил: murder New!
· Личное сообщение · #15

Похоже проверка проходит при загрузке файла (cgi/upload_image). Вышел на библиотеку "\usr\local\lib\libinfra.so", функция VOS_ImageVerify, которая в свою очередь обращается к функции UTIL_Crc32. Будем искать...

Добавлено спустя 4 часа 5 минут
Кто-нибудь пробовал отлаживать через quemu?

https://www.exploit-db.com/docs/english/36806-developing-mips-exploits-to-hack-routers.pdf

Может закинуть этот веб-сервер в debian и запустить для удалённой отладки? А то так в иде сложновато понять как там всё работает - там ещё и crc рассчитывается двумя разными алгоритмами.

Добавлено спустя 6 часов 35 минут
А вот тут приблизительно этим и занимаются, используюя магию chroot.
 eXeL@B —› Основной форум —› Модификация прошивки OpenWRT

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS