Изучение уязвимостей электронных систем.
 
key programming immo tools emergency start device программаторы ключа заводилки Кодграббер штатных охранных систем, toyota, lexus, subaru.

Вернуться   Изучение уязвимостей электронных систем > Фрикинг > Всё по теме электронного взлома

Всё по теме электронного взлома Всё что не подходит под другие разделы. Игровые аппараты, электрические счётчики, таксофоны и тд.

Ответ
 
Опции темы
Старый 24.01.2008, 02:18   #1
danko
продвинутый фрикер
 
Аватар для danko
 
Регистрация: 02.03.2006
Адрес: danko@phreaker.us
Сообщений: 2,026
Поблагодарил: 0
Поблагодарили 727 раз в 261 сообщениях
danko имеет захватывающую ауруdanko имеет захватывающую ауру
По умолчанию Немного о ККМ

Немного истории

В свое время я около 8 лет отработал в ЦТО ККМ (Центр Технического Обслуживания Контрольно-Кассовых Машин). Здесь я попытаюсь вкратце объяснить, как –же работают ККМ и как с ними бороться.

ИТАК

Кассовый аппарат работает следующим образом – в течении дня он запоминает сколько чеков отбивалось, и на какие суммы. В конце дня оператор выполняет процедуру *закрытие смены*, или так называемый *отчет с гашением*. Во время этой процедуры аппарат выдает распечатку контрольной ленты (отражает все отбитые в течение дня чеки) и Z-отчет (распечатка с текущей датой, суммой всех покупок и служебной инфой).
Аппарат следит за тем, чтобы Z-отчет проводился каждые 24 часа. В случае если оператор забудет снять отчет, ККМ не позволит войти в кассовый режим для отбития чеков до тех пор, пока оператор не проведет суточное гашение (закрытие смены, или иначе Z-отчет).
Во время проведения гашения вместе с выдачей распечатки ККМ прописывает себе данные о проводимом гашении в фискальную память. Как правило, данные о гашении занимают не более 32 байт в фискальной памяти аппарата. В ФП записывается дата гашения, порядковый номер гашения, сумма оформленных чеков и контрольная сумма записи. Некоторые аппараты помимо этих данных записывают также отдельно суммы по отделам (секциям), либо отдельно сумму чеков оформленных с НДС итд.. Но это уже опционально..

В любой момент времени представители налоговых органов имеют возможность снять данные с блока фискальной памяти аппарата. Для этого в ККМ предусмотрен режим НИ (налогового инспектора). Инспектор имея пароль доступа к режиму НИ сможет снять с аппарата распечатку за любой период времени. В распечатке содержатся следующие данные – дата, сумма за этот день, порядковый номер Z-отчета. Например можно задать аппарату период с 01-01-01 по 01-01-08. В результате получим многометровую портянку на которой будут распечатаны все данные из блока фискальной памяти, попадающие в интересующий нас период.

Итак, подытожим, что мы имеем и знаем:
1.) ККМ не запоминает каждый отбитый чек, а хранит в ФП только номер гашения, дату гашения и сумму.
2.) Данные в ФП записываются только в конце смены, когда оператор выполняет процедуру гашения (Z-отчет, или закрытие смены)
3.) В течении дня данные обо всех оформленных чеках ККМ хранит в оперативной памяти.
4.) Причем оперативная память имеет свою батарейку (либо применяются энергонезависимые м-схемы), т.е. ККМ можно в течении рабочего дня выключить и она ничего не забудет

А теперь самое главное – как можно бороться с ККМ
Конкретных решений масса, но все они сводятся к одному принципу – нужно изменить данные в оперативной памяти аппарата до того, как будет проведен Z-отчет. Моя реализация сводилась к следующему – в конце дня, перед снятием Z-отчета оператор выключал ККМ, а затем включал, удерживая нажатой хитрую комбинацию клавиш.
Изменения в прошивке сводились к следующему – по вектору сброса программа проверяла нажата ли та самая *хитрая* комбинация клавиш или нет. Если нет, то управление передавалось далее, стандартному старту ККМ. Если же нажата нужная комбинация, то проверялось соответствие заводскому номеру ККМ (для того, чтобы измененная прошивка была привязана к конкретному аппарату), а затем управление передавалось куску кода, который затирал в оперативной памяти результаты сегодняшнего дня. В итоге оператор мог после этого пробить на аппарате нужную сумму (например 100 рублей, вместо реально оборота) и снимать Z-отчет (проводить закрытие смены).

Это общий принцип. Сейчас в РФ данная схема работать не будет, т.к. в России введено обязательное наличие в ККМ ЭКЛЗ (Электронная Контрольная Лента Защищенная). Вкратце это похоже на вторую фискальную память, но запоминает каждый пробитый чек, а не суточный итог. Но описанная схема до сегодняшнего дня с успехом применяется в Казахстане. Впрочем обязательное наличие в ККМ ЭКЛЗ не является непреодолимым препятствием, так как ЭКЛЗ представляет собой отдельный модуль, который общается с МК кассового аппарата посредством RS2323 либо по шине IIC.. Так что же нам мешает изменить прошивку таким образом, чтобы в оперативную память ККМ записывалась сумма меньше отбитой в 10 раз. И естественно в ЭКЛЗ передавалась тоже уменьшенная сумма. Короче на каждый предел можно найти свой беспредел.

Перечитал. Немного сумбурно. С первого прочтения можно и не понять о чем речь. На все вопросы наших новичков постараюсь ответить как можно понятнее.
Теперь вопросы от меня:
Нужно ли прилепить теме статус *важная*, чтоб не утонула в форуме через пару месяцев?
Вообще, это нужно новичкам?
Жду Ваших отзывов… :-)
Ну и как обычно, поправки, замечания, дополнения приветствуются.
Копирайты phreaker.ru
danko вне форума   Ответить с цитированием
Старый 25.01.2008, 04:23   #2
danko
продвинутый фрикер
 
Аватар для danko
 
Регистрация: 02.03.2006
Адрес: danko@phreaker.us
Сообщений: 2,026
Поблагодарил: 0
Поблагодарили 727 раз в 261 сообщениях
danko имеет захватывающую ауруdanko имеет захватывающую ауру
По умолчанию

Небольшое продолжение

По железу аппаратов:

В принципе, касс выпускается великое множество. Казахстанский реестр, например содержит около 60 моделей. Большую часть разрешенных к использованию ККМ составляют модели Курского АО «Счетмаш», Смоленского ПО «Искра», Московского «Инкотекса», Калужского завода телеграфной аппаратуры «КЗТА», и немного экзотики (болгарская «электроника», samsung, casio итд).

Все аппараты как правило базируются на клонах intel 8051. По крайней мере, на конец 2004 года исключений не было. МК применяются в основном с внешней ПЗУ на 64 кило (типа 27С512), хотя например Инкотекс юзает 89С52 (позднее 89С55) с внутренней флешью.

В качестве RAM обычно применяется 32-килобайтная 62256. КЗТА и Инкотекс любят юзать в этом качестве 24 серию (IIC).

В качестве накопителя ФП – обычно 27С512 (иногда однократки, иногда с УФ-стиранием, а в последнее время все чаще – электростираемые кристаллы от Winbond ). Инкотекс и КЗТА для ФП использует все те же IIC, а счетмаш – флеши 29F010 либо 49F010.

В качестве индикации – обычно ЖКИ, хотя искра и инкотекс любят LED, а КЗТА в старых моделях вообще ВЛИ юзал!!

Принтера почти на всех аппаратах одинаковые, кроме электроники и Samsung – у них свои собственные разработки (у Samsung неплохие дрюкеры, а вот у болгар – полный изврат!). Для остальных раньше принтера были всего двух типов - CITIZEN MD910 и EPSON (модель уже не помню). Оба матричные, 24 символа в строке на ленте шириной 57мм. Epson довольно надежен, а вот на Citizen механики массу денег зарабатывали :-).. Сейчас их не применяют вообще, везде термопринтера.

По алгоритму работы:

В общих чертах алгоритм работы всех аппаратов одинаков. С завода кассы приходят с программно отключенной фискальной памятью. В таком режиме можно обучать будущий персонал работе на ККМ. В процессе ввода в эксплуатацию (по документам – это пуско-наладочные работы :-), в народе-же фискализация) в ККМ вносятся ИНН владельца, шифр налогового органа, программируются дата, время, заголовок чека, налоговые ставки итп. После проведения фискализации аппарат начинает запоминать в ФП снимаемые Z-отчеты, и печатает на каждом чеке фискальный признак (обычно это либо буквы ФП в последней строке чека, либо слово ФИСКАЛЬНЫЙ, или еще что-нибудь в этом роде).

После фискализации аппарат передается владельцу. Пользователь использует всего 3 режима работы аппарата – кассовый режим (основной режим в котором отбиваются чеки), отчет с гашением (Z-отчет, закрытие смены. Выполняется в конце смены, выдает распечатку с суточным итогом продаж, и производит запись в ФП), и отчет без гашения (X-отчет. Это тот-же Z-отчет, только в ФП ничего не записывается. Служит для самоконтроля кассира и может выполняться хоть 10 раз в день).
Существует еще несколько режимов работы, которые не используются оператором ККМ. Это режим программирования кассы, тестирование, режим налогового инспектора итп. Используются техниками ЦТО и налоговиками.

Небольшое лирическое отступление..

Прикол с ККМ от Samsung. Для всех кассовых аппаратов характерна возможность сторнирования (отмены незакрытого чека). Чек считается закрытым после нажатия клавиши «итог», то есть по нажатию «итог» на чеке печатается окончание (общая сумма по чеку, время отбития, фискальный признак итд), и чек попадает в электронный журнал продаж и плюсуется к суточному итогу.
Так вот умная фирма Samsung предусмотрела клавишу «отдельный чек». Смысл в том, что ККМ может стоять в магазине, где много отделов, а касса одна. И когда клиент оформляет покупки в разные отделы, оператор пользуется функцией «отдельный чек». В этом случае ККМ распечатывает полностью оформленные чеки, при этом считая для себя, что это все один чек на несколько покупок в разные отделы. И самое важное, ККМ оставляет чек ОТКРЫТЫМ до нажатия «итог». Ну и вот короче.. Оператор с честной мордой отбивает клиенту чек, вместо итога нажимая «отдельный чек». Клиент забирает чек и уходит довольный. После его ухода оператор с не менее честной мордой, и с чистой совестью жмет на аппарате волшебную кнопочку «сторно».

Пока все.. Ждем вопросов.

Копирайты – phreaker.ru

Последний раз редактировалось danko; 25.01.2008 в 04:31.
danko вне форума   Ответить с цитированием
Старый 26.01.2008, 01:32   #3
danko
продвинутый фрикер
 
Аватар для danko
 
Регистрация: 02.03.2006
Адрес: danko@phreaker.us
Сообщений: 2,026
Поблагодарил: 0
Поблагодарили 727 раз в 261 сообщениях
danko имеет захватывающую ауруdanko имеет захватывающую ауру
По умолчанию

Цитата:
Сообщение от explosion Посмотреть сообщение
т.е. каждый день после снятия Z-отчета весь баланс сбрасывается и нигде вообще не сохраняется? Запоминает ли аппарат сколько денег всего за свое существование он принимал или какое количество фискализаций произведено?

Общее накопление хранится в ОЗУ и выводится на каждом Z-отчете после строки с суточным итогом.. Но не на всех кассах. у гнусмасов, например накопление не ведется.
Но при снятии отчетов по ФП в конце отчета выводится общий итог за указанный период.

Данные по фискализациям аппаратов хранятся в ФП. Обычно аппарат позволяет провести 5 фиск., после - замена ФП.


Цитата:
Сообщение от explosion Посмотреть сообщение
В аппаратах с ЭКЛЗ есть ли смысл подправлять эту вторую память (всмысле получится ли это)? Например, убил пару записей в эклз и вычел их суммы из общей?

Нереально, тк ЭКЛЗ представляет собой сплошной кусок компаунда. Залита напрочь толи эпокситкой, толи еще какой-то хренью. И потом блок ЭКЛЗ рассчитан на работу в течении года, затем меняется на новый (видимо памяти у него на большее не хватает, каждый чек запоминать это песец).. А куда старый блок ЭКЛЗ девают, я хз.. Но явно не на свалку. Типа хранить лет 5 а можа и более.

Цитата:
Сообщение от explosion Посмотреть сообщение
И еще финансовый вопрос

Меньше чем за 500$ не заморачивайся.


Попозже еще поподробнее накидаю как я боролся с самыми первыми своими жертвами))
danko вне форума   Ответить с цитированием
Старый 26.01.2008, 01:45   #4
h2
Admin
 
Аватар для h2
 
Регистрация: 01.02.2006
Адрес: Phreaker.US
Сообщений: 1,694
Поблагодарил: 58
Поблагодарили 583 раз в 139 сообщениях
h2 скоро станет знаменитым(-ой)
По умолчанию

Цитата:
Сообщение от danko Посмотреть сообщение
Нереально, тк ЭКЛЗ представляет собой сплошной кусок компаунда. Залита напрочь толи эпокситкой, толи еще какой-то хренью. И потом блок ЭКЛЗ рассчитан на работу в течении года, затем меняется на новый (видимо памяти у него на большее не хватает, каждый чек запоминать это песец).. А куда старый блок ЭКЛЗ девают, я хз.. Но явно не на свалку. Типа хранить лет 5 а можа и более.
)

есть у меня эта хреновина. вроди даже новая. там внутри криптосопроцессор. данные во флэше шифрует. а год работы это типа чтобы пароль за это время не подобрали и не откорректировали. бредятина короче
Както их корректируют один хрен. видел статью в инете.
h2 вне форума   Ответить с цитированием
Старый 26.01.2008, 02:54   #5
explosion
гость
 
Аватар для explosion
 
Регистрация: 27.05.2007
Сообщений: 133
Поблагодарил: 0
Поблагодарили 7 раз в 6 сообщениях
explosion стоит на развилке
По умолчанию

вот притащили кассу. Называется "Кроха", типа производства киев. Вскрытие показало что это на самом деле Datecs MP50H. ЭКЛЗ ессно нет, все довольно тривиально, память атмеловская, ерундовая. А вот проц DF3687FP. По нему во всем инете нашел только китайский даташит, нихрена не понятно. По ходу камень не очень распространенный, вообще никто о нем ничего не знает. Есть технологический разъем, 5 проводов, но то ли оно JTAG, толи ISP, толи SPI хер его поймет - даташита нормального нет. У кассы есть rs232, но там вроде ничего интересного нет.
danko, может ты встречался? че хоть за ядро?


Уранили мишку на пол
Оторвали мишке лапу
Запихали в жопу веник
Мишка должен много денег
explosion вне форума   Ответить с цитированием
Старый 26.01.2008, 04:11   #6
danko
продвинутый фрикер
 
Аватар для danko
 
Регистрация: 02.03.2006
Адрес: danko@phreaker.us
Сообщений: 2,026
Поблагодарил: 0
Поблагодарили 727 раз в 261 сообщениях
danko имеет захватывающую ауруdanko имеет захватывающую ауру
По умолчанию

Цитата:
Сообщение от explosion Посмотреть сообщение
вот притащили кассу. Называется "Кроха", типа производства киев. Вскрытие показало что это на самом деле Datecs MP50H. ЭКЛЗ ессно нет, все довольно тривиально, память атмеловская, ерундовая. А вот проц DF3687FP. По нему во всем инете нашел только китайский даташит, нихрена не понятно. По ходу камень не очень распространенный, вообще никто о нем ничего не знает. Есть технологический разъем, 5 проводов, но то ли оно JTAG, толи ISP, толи SPI хер его поймет - даташита нормального нет. У кассы есть rs232, но там вроде ничего интересного нет.
danko, может ты встречался? че хоть за ядро

Было пару датексов тока 500-ых.. В ремонт не попадали, в основном ФП подправить...
Если прально помню, там 8051 были... А камень про который ты пишешь я видел на форуме моделистов обсуждали.. Он вроде японский. Стоит там у них в навороченных системах радиоуправления.. даташит дохера весит??

Цитата:
Сообщение от h2 Посмотреть сообщение
есть у меня эта хреновина. вроди даже новая. там внутри криптосопроцессор. данные во флэше шифрует. а год работы это типа чтобы пароль за это время не подобрали и не откорректировали. бредятина короче
Както их корректируют один хрен. видел статью в инете

Да и нах с паролем трахаццо, если проще в эту хреновину левые данные запихивать))))

Последний раз редактировалось danko; 28.01.2008 в 00:18.
danko вне форума   Ответить с цитированием
Старый 29.01.2008, 17:50   #7
explosion
гость
 
Аватар для explosion
 
Регистрация: 27.05.2007
Сообщений: 133
Поблагодарил: 0
Поблагодарили 7 раз в 6 сообщениях
explosion стоит на развилке
По умолчанию

А мне ремонтировать и не надо
Даташит не на сам камень, а на какую то отладочную плату с ним. Весил метров 5 (не знаю, смотрел в онлайне). Единственное что я понял из него - где у проца питание. На остальное знания иностранных языков не хватило. Вот поищу сегодня еще, может чего найду более дельного


Уранили мишку на пол
Оторвали мишке лапу
Запихали в жопу веник
Мишка должен много денег
explosion вне форума   Ответить с цитированием
Старый 30.01.2008, 19:03   #8
danko
продвинутый фрикер
 
Аватар для danko
 
Регистрация: 02.03.2006
Адрес: danko@phreaker.us
Сообщений: 2,026
Поблагодарил: 0
Поблагодарили 727 раз в 261 сообщениях
danko имеет захватывающую ауруdanko имеет захватывающую ауру
По умолчанию

Как и обещал, немного о своих изысках.. (типа как бороться с ККМ)

Как всегда бывает, сподвигла меня на сии подвиги жажда наживы.
В какой-то момент времени я начал задаваться вопросом, как бы наебать ККМ и до кучи НК.
Не давали покоя прецеденты с АМС-100ф.. Это аппарат производства КЗТА.. Смысл в том, что Калужские инженеры допустили в программном обеспечении этого аппарата (АМС-100ф) конкретную промашку.. Это один из немногих ККМ, которые имеют на борту RS232... Дак вот, прикол в том, что ранние версии ПО этого аппарата позволяли через RS232 редактировать электронный журнал суточных продаж. Существовал некий девайс построенный на PIC16 который подключался к ККМ через RS232, и позволял скинуть суточный итог.. Причем юзер мог иметь хоть 10 ККМ и всего один девайс..
Правда сейчас мне кажется, что это была не промашка инженеров, а далеко рассчитаный маркетинговый ход. Так или иначе, но АМС пользовался в свое время бешенной популярностью. Раскупался этот аппарат лучше чем горячие пирожки). И все благодаря своей недокументированной особенности...


ну да ладно.. Это все лирика.. Ближе к телу))
Передо мной встала проблема - как же узнать, по каким адресам в оперативке ККМ хранит суточное накопление.. Асьмы я тогда толком не знал, поэтому пришлось призвать на выручку старушку смекалку.. Кароч за бессонную ночь был найден выход.. Я слепил переходник, чтоб оперативку (62256) можно было считать в программаторе как 27С256.. Затем в подопытный аппарат была установлена панелька, а на оперативку была проинсталлирована батарейка (типа обеспечена энергонезависимость).. Далее события развивались по следующему сценарию.
Вставляем энергонезависимый РАМ в аппарат, пробиваем пару чеков, аппарат выключаем.. РАМ через волшебный переходник считываем программатором. Затем РАМ инсталлируется назад в ККМ, еще пару чеков, опять считываем.. Ну итд. Позднее (с освоением асьмы) была написана прошивка к ККМ, которая при установке вместо штатной ПЗУ кидала дамп оперативки в RS232. Сценарий соответственно изменился - пробиваем чеки, меняем РОМ на наш, ловим компом дамп.

Полегче (а может и посложнее) было с аппаратами от инкотекса.. Там в качестве оперативки юзается 24 серия.. Вообще, инкотекс очень любит IIC. На этой шине висят ФП, ОЗУ, RTC(часы реального времени)... Даже клава с индикацией обслуживаются отдельным ПИК-ом и общаются с центральным процессором по I2C. Пришлось осваивать и этот протокол (о чем, вообще-то не жалею). Зато с электронным журналом продаж у инкотекса дело обстояло красиво. Окончание журнала обозначалось всего парой байтиков (если мне склероз не изменяет). Да и суточный счетчик в памяти найти не было проблемой. Вобщем через месяц все было отлажено и пошло в серию))).

Учитывая сегодняшнее положение с ККМ в РФ, а именно обязательное наличие в ККМ ЭКЛЗ, данные методики не помогут. Но ЭКЛЗ - это по сути обычный IIC-Slave. Можно отредактировать прошивку так, чтобы в него отправлялись не реальные суммы, а что-нибудь другое. Можно вообще сделать так чтобы ККМ пробивал чек например на 1000, а сам-бы считал, что пробито всего 100. И в ФП, и в ЭКЛЗ соответственно отправлялись-бы уменьшенные суммы.

Ну вот, пока вроде все.
С нетерпением ждем поправок и вопросов.

копирайты phreaker.ru
danko вне форума   Ответить с цитированием
Старый 18.02.2008, 16:03   #9
Брюс
случайно влез
 
Регистрация: 18.02.2008
Сообщений: 17
Поблагодарил: 0
Поблагодарили 3 раз в 2 сообщениях
Брюс стоит на развилке
По умолчанию

Цитата:
Сообщение от h2 Посмотреть сообщение
есть у меня эта хреновина. вроди даже новая. там внутри криптосопроцессор. данные во флэше шифрует. а год работы это типа чтобы пароль за это время не подобрали и не откорректировали. бредятина короче
Както их корректируют один хрен. видел статью в инете.

Я сам работаю в сфере ККМ. Много проблем, хватает ЭКЛЗ на 13 месяцев, на 14-й встаёт-истекает временной ресурс использования. Вскрывал я эту -чудо-технику, залита белым селикотовым герметиком. Как же избавиться он этого попадалова на деньги (работа с заменой 5500 руб на сегодняшний день). Самые смелые уходят с обслуживания в ЦТО и ставят на стороне прошивки не запрашивающие связь ККМ с ЭКЛЗ, т.е ставяться софты от ККМ с буквой Ф (например: ККМ АМС - 100 К ставится софт от ККМ АМС - 100 Ф). НО тут тоже вожникла проблема, налоговики отслеживают в последнее время замену блоков ЭКЛЗ, регистрационный номер которого прописывается в доп.листе к Паспорту версии ККМ. Единственное утешение, правительство (правда уже второй год) планирует отмену ККМ чп-шникам на вменённом налоге.
Брюс вне форума   Ответить с цитированием
Старый 11.03.2008, 23:23   #10
svv
случайно влез
 
Регистрация: 06.03.2008
Сообщений: 4
Поблагодарил: 0
Поблагодарили 1 раз в 1 сообщении
svv стоит на развилке
По умолчанию

Схемотехника ЭКЛЗ следующая: связной проц AT89C55W в последних версиях MSP430F1471, DataFlash AT45DB321B в последних версиях другая в четверо большей емкости, крипто-дрянь К5004ВЕ1, 95% отказов имено по вине этой штуки. Она всем и управляет и срок 13 месяцев, и все счётчики в ней хранятся и регистрационые данные.
(RISC процессор производства ПО "Ангстрем" с протоколом обмена ISO7816-3 т.е. СИМКА российского производства, в первых выпусках +10 по Цельсию было для неё жуткий мороз ЭКЛЗы дохли пачками)
svv вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Немного о программировании. oleg Флейм 22 26.10.2015 02:35
немного по банкоматам... npl Документация 8 10.10.2015 04:02
Всем добрый день,вопрос немного не по теме Пос терминал Kakdela Программирование микроконтроллеров 1 29.03.2015 20:20
Приват Банк Украина - немного о нем SocialWare Пластиковые карты 15 16.05.2013 13:32
немного юмора:) потапыч Флейм 27 11.02.2011 20:21


Текущее время: 20:11. Часовой пояс GMT +4.


Перевод: zCarot