Sim toolkit 2 что это за программа

Поскольку это неотъемлемая часть вашего телефона, есть нет таким образом, вы можете удалить или отключить приложение SIM Toolkit на своем устройстве Android. На наш взгляд, нет ничего плохого в том, чтобы оставить приложение на вашем телефоне просто потому, что оно крошечное по сравнению с другими приложениями на Android и не мешает использованию вашего телефона.

Могу ли я удалить SIM Toolkit?

Если рассматриваемое приложение хранится в / system и его нельзя отключить, то удалить / отключить без рута невозможно. Android просто не позволяет «пользователю» возиться с системными приложениями.

Для чего используется набор инструментов для SIM-карты?

SIM Application Toolkit (STK) — это стандарт системы GSM который позволяет модулю идентификации абонента (SIM-карте) инициировать действия, которые могут использоваться для различных дополнительных услуг. . SIM-карта также дает команды трубке, такие как отображение меню и / или запрос ввода данных пользователем.

Могу ли я принудительно остановить SIM Toolkit?

Попробуйте зайти в Настройки -> Приложения -> проведите пальцем вправо, пока не дойдете до вкладки «все», а затем прокрутите вниз, пока не увидите см. «SIM Toolkit», после чего вы сможете нажать на него, принудительно остановить и отключить.

[SOLVED] SIM Toolkit Error Problem Issue (100% Working)

SIM Toolkit — шпионское приложение?

Mobile Spy также работает с iOS (требуется джейлбрейк), BlackBerry (v7 и ниже) и Symbian, и за несколькими устройствами можно наблюдать с одного и того же веб-интерфейса. После установки приложение остается скрытым от пользователя и отображается только как «SIM Toolkit » в списке запущенных приложений в настройках Android.

Как мне получить SIM Toolkit?

Настройки -> Настройки беспроводной сети -> Настройки SIM-карты и сети -> Нажмите на SIM-карту (SIM 1 или SIM 2, это две SIM-карты) -> Прокрутите список до конца и нажмите SIM Toolkit.

Как исправить мой набор инструментов для SIM-карты?

  1. Выключите устройство, удерживая кнопку питания.
  2. Снимаем заднюю крышку телефона.
  3. Удалите SIM-карту, которая вызывает проблему.
  4. Аккуратно протрите SIM-карту мягкой тканью. (.
  5. После очистки вставьте SIM-карту в слот.
  6. Установите заднюю крышку и загрузите устройство, долгое нажатие на кнопку питания.

Как вы используете SIM Toolkit на Android?

  1. Во-первых, вы также заходите в Настройки.
  2. Затем перейдите в Настройки беспроводной сети -> Настройки Sim и сети.
  3. После этого просто выберите симку (SIM 1 или SIM 2)
  4. Наконец, прокрутите вниз до конца списка, пока не увидите SIM Toolkit, и щелкните его.

Почему мой телефон сообщает о недопустимом вводе?

Это проблема SIM-карты у вас с использованием. Если вы используете две SIM-карты, удалите одну из SIM-карт, если проблема не исчезнет, ​​значит, SIM-карта, которая в данный момент находится на устройстве, неисправна. Если проблема не сохраняется, значит, извлеченная SIM-карта неисправна.

Как перестать получать сообщения от SIM Toolkit?

  1. Откройте приложение SIM Toolkit на своем телефоне.
  2. Выберите FLASH !.
  3. Щелкните Активация.
  4. Теперь нажмите «Деактивировать» и нажмите «ОК».

Как мне избавиться от уведомления об отсутствии SIM-карты?

Вы можете избавиться от уведомления, не удерживая его. Что вам нужно сделать, это пойти в Приложения> 3 точки в правом верхнем углу> показать системные приложения> найти мобильный сети> перейдите в настройки хранилища и очистите его кеш и данные. Метод 2: перейдите в Приложения> 3 точки> системные приложения.

Читайте также:
Vsax3 что это за программа

Источник: c-pt.ru

Эмуляция и перехват SIM-команд через SIM Toolkit на Android 5.1 и ниже (CVE-2015-3843)

Я обнаружил эту уязвимость, исследуя возможность перехвата одноразовых паролей, которые отправлялись банком поставщику телекоммуникационных услуг, а затем поступали на специальное приложение SIM-карты и выводились на пользовательский интерфейс Android.

Перехват

Представьте, что на SIM-карте есть небольшое приложение, которое получает сообщение от оператора связи и показывает его на экране вашего Android-устройства. Если покопаться в исходниках Android, можно наткнуться на класс com.android.internal.telephony.cat.CatService, который отвечает за передачу команд между слоем радиоинтерфейса (Radio Interface Layer, RIL) и ОС.

public void handleMessage(Message msg) < CatLog.d(this, «handleMessage[» + msg.what + «]»); switch (msg.what) < case MSG_ID_SESSION_END: case MSG_ID_PROACTIVE_COMMAND: case MSG_ID_EVENT_NOTIFY: case MSG_ID_REFRESH: CatLog.d(this, «ril message arrived,slotid:» + mSlotId); String data = null; if (msg.obj != null) < AsyncResult ar = (AsyncResult) msg.obj; if (ar != null ar.result != null) < try < data = (String) ar.result; >catch (ClassCastException e) < break; >> > mMsgDecoder.sendStartDecodingMessageParams(new RilMessage(msg.what, data)); break; case MSG_ID_CALL_SETUP: mMsgDecoder.sendStartDecodingMessageParams(new RilMessage(msg.what, null)); break; case MSG_ID_ICC_RECORDS_LOADED: break; case MSG_ID_RIL_MSG_DECODED: handleRilMsg((RilMessage) msg.obj); break; case MSG_ID_RESPONSE: handleCmdResponse((CatResponseMessage) msg.obj); break;

Из всех типов сообщений нас интересует MSG_ID_RIL_MSG_DECODED .

private void handleRilMsg(RilMessage rilMsg) < if (rilMsg == null) < return; >// dispatch messages CommandParams cmdParams = null; switch (rilMsg.mId) < case MSG_ID_EVENT_NOTIFY: if (rilMsg.mResCode == ResultCode.OK) < cmdParams = (CommandParams) rilMsg.mData; if (cmdParams != null) < handleCommand(cmdParams, false); >> break; case MSG_ID_PROACTIVE_COMMAND: try < cmdParams = (CommandParams) rilMsg.mData; >catch (ClassCastException e) < // for error handling : cast exception CatLog.d(this, «Fail to parse proactive command»); // Don’t send Terminal Resp if command detail is not available if (mCurrntCmd != null) < sendTerminalResponse(mCurrntCmd.mCmdDet, ResultCode.CMD_DATA_NOT_UNDERSTOOD, false, 0x00, null); >break; > if (cmdParams != null) < if (rilMsg.mResCode == ResultCode.OK) < handleCommand(cmdParams, true); >else < // for proactive commands that couldn’t be decoded // successfully respond with the code generated by the // message decoder. sendTerminalResponse(cmdParams.mCmdDet, rilMsg.mResCode, false, 0, null); >> break;

Оба оператора switch приводят к вызову метода handleCommand() , однако второй параметр в каждом случае разный:

  • MSG_ID_EVENT_NOTIFY — обычное уведомление, которое не требует ответа от пользователя;
  • MSG_ID_PROACTIVE_COMMAND — а это, как раз наоборот, требует.

/** * Handles RIL_UNSOL_STK_EVENT_NOTIFY or RIL_UNSOL_STK_PROACTIVE_COMMAND command * from RIL. * Sends valid proactive command data to the application using intents. * RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE will be send back if the command is * from RIL_UNSOL_STK_PROACTIVE_COMMAND. */ private void handleCommand(CommandParams cmdParams, boolean isProactiveCmd) < CatLog.d(this, cmdParams.getCommandType().name()); CharSequence message; CatCmdMessage cmdMsg = new CatCmdMessage(cmdParams); switch (cmdParams.getCommandType()) < case SET_UP_MENU: if (removeMenu(cmdMsg.getMenu())) < mMenuCmd = null; >else < mMenuCmd = cmdMsg; >sendTerminalResponse(cmdParams.mCmdDet, ResultCode.OK, false, 0, null); break; case DISPLAY_TEXT: break; case REFRESH: // ME side only handles refresh commands which meant to remove IDLE // MODE TEXT. cmdParams.mCmdDet.typeOfCommand = CommandType.SET_UP_IDLE_MODE_TEXT.value(); break; case SET_UP_IDLE_MODE_TEXT: sendTerminalResponse(cmdParams.mCmdDet, ResultCode.OK, false, 0, null); break; case SET_UP_EVENT_LIST: if (isSupportedSetupEventCommand(cmdMsg)) < sendTerminalResponse(cmdParams.mCmdDet, ResultCode.OK, false, 0, null); >else < sendTerminalResponse(cmdParams.mCmdDet, ResultCode.BEYOND_TERMINAL_CAPABILITY, false, 0, null); >break; case PROVIDE_LOCAL_INFORMATION: ResponseData resp; switch (cmdParams.mCmdDet.commandQualifier) < case CommandParamsFactory.DTTZ_SETTING: resp = new DTTZResponseData(null); sendTerminalResponse(cmdParams.mCmdDet, ResultCode.OK, false, 0, resp); break; case CommandParamsFactory.LANGUAGE_SETTING: resp = new LanguageResponseData(Locale.getDefault().getLanguage()); sendTerminalResponse(cmdParams.mCmdDet, ResultCode.OK, false, 0, resp); break; default: sendTerminalResponse(cmdParams.mCmdDet, ResultCode.OK, false, 0, null); >// No need to start STK app here. return; case LAUNCH_BROWSER: if ((((LaunchBrowserParams) cmdParams).mConfirmMsg.text != null) (((LaunchBrowserParams) cmdParams).mConfirmMsg.text.equals(STK_DEFAULT))) < message = mContext.getText(com.android.internal.R.string.launchBrowserDefault); ((LaunchBrowserParams) cmdParams).mConfirmMsg.text = message.toString(); >break; case SELECT_ITEM: case GET_INPUT: case GET_INKEY: break; case SEND_DTMF: case SEND_SMS: case SEND_SS: case SEND_USSD: if ((((DisplayTextParams)cmdParams).mTextMsg.text != null) (((DisplayTextParams)cmdParams).mTextMsg.text.equals(STK_DEFAULT))) < message = mContext.getText(com.android.internal.R.string.sending); ((DisplayTextParams)cmdParams).mTextMsg.text = message.toString(); >break; case PLAY_TONE: break; case SET_UP_CALL: if ((((CallSetupParams) cmdParams).mConfirmMsg.text != null) (((CallSetupParams) cmdParams).mConfirmMsg.text.equals(STK_DEFAULT))) < message = mContext.getText(com.android.internal.R.string.SetupCallDefault); ((CallSetupParams) cmdParams).mConfirmMsg.text = message.toString(); >break; case OPEN_CHANNEL: case CLOSE_CHANNEL: case RECEIVE_DATA: case SEND_DATA: BIPClientParams cmd = (BIPClientParams) cmdParams; /* Per 3GPP specification 102.223, * if the alpha identifier is not provided by the UICC, * the terminal MAY give information to the user * noAlphaUsrCnf defines if you need to show user confirmation or not */ boolean noAlphaUsrCnf = false; try < noAlphaUsrCnf = mContext.getResources().getBoolean( com.android.internal.R.bool.config_stkNoAlphaUsrCnf); >catch (NotFoundException e) < noAlphaUsrCnf = false; >if ((cmd.mTextMsg.text == null) (cmd.mHasAlphaId || noAlphaUsrCnf)) < CatLog.d(this, «cmd » + cmdParams.getCommandType() + » with null alpha id»); // If alpha length is zero, we just respond with OK. if (isProactiveCmd) < sendTerminalResponse(cmdParams.mCmdDet, ResultCode.OK, false, 0, null); >else if (cmdParams.getCommandType() == CommandType.OPEN_CHANNEL) < mCmdIf.handleCallSetupRequestFromSim(true, null); >return; > // Respond with permanent failure to avoid retry if STK app is not present. if (!mStkAppInstalled) < CatLog.d(this, «No STK application found.»); if (isProactiveCmd) < sendTerminalResponse(cmdParams.mCmdDet, ResultCode.BEYOND_TERMINAL_CAPABILITY, false, 0, null); return; >> /* * CLOSE_CHANNEL, RECEIVE_DATA and SEND_DATA can be delivered by * either PROACTIVE_COMMAND or EVENT_NOTIFY. * If PROACTIVE_COMMAND is used for those commands, send terminal * response here. */ if (isProactiveCmd ((cmdParams.getCommandType() == CommandType.CLOSE_CHANNEL) || (cmdParams.getCommandType() == CommandType.RECEIVE_DATA) || (cmdParams.getCommandType() == CommandType.SEND_DATA))) < sendTerminalResponse(cmdParams.mCmdDet, ResultCode.OK, false, 0, null); >break; default: CatLog.d(this, «Unsupported command»); return; > mCurrntCmd = cmdMsg; broadcastCatCmdIntent(cmdMsg); >

Читайте также:
Cyberlink media suite что это за программа и нужна

И, наконец, broadcastCatCmdIntent() :

private void broadcastCatCmdIntent(CatCmdMessage cmdMsg)

А вот эта часть довольно занятная:

  • AppInterface.CAT_CMD_ACTION равняется android.intent.action.stk.command ;
  • SLOT_ID используется для устройств с несколькими SIM-картами;
  • STK CMD — команда в качестве объекта Parcelable .
Как злоумышленник может этим воспользоваться?

Например, использовать вредоносное приложение, не требующее дополнительных привилегий, для перехвата команд, отправляемых SIM-картой на телефон. Для этого необходимо лишь зарегистрировать receiver с действием android.intent.action.stk.command и получить STK CMD из интента.

Пример перехваченной команды:

Это объект Parcelable в байтах. Преобразовав Hex в ASCII, вы получите сообщение SIM-карты.

Эмуляция

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

Вид сообщения

Это приложение называется SIM Toolkit (STK) и является частью стандартного Android-фреймворка. Исходники можно найти тут.

Выше приведен фрагмент файла AndroidManifest.xml , относящийся к компоненту receiver . Как видно, компонент полностью экспортирован. Это позволяет не только перехватывать команды SIM-карты, но и создавать при помощи вредоносных программ объект Parcelable , а затем отправлять его на com.android.stk.StkCmdReceiver . Receiver не проверяет отправителя, а действие android.intent.action.stk.command не объявлено в системном файле AndroidManifest.xml в качестве защищенного сообщения, что позволяет мошенникам эмулировать отправку команд SIM-карты.

1. SIM-карта запрашивает подтверждение некоторой операции, скажем, транзакции в интернет-банке, выводя на экран телефона сообщение типа «Подтвердить транзакцию № 1234 на сумму 100 500 рублей» с двумя опциями — «ОК» и «Отмена». Код на StkDialogActivity.java:

public void onClick(View v) < String input = null; switch (v.getId()) < case OK_BUTTON: CatLog.d(LOG_TAG, «OK Clicked!, mSlotId: » + mSlotId); cancelTimeOut(); sendResponse(StkAppService.RES_ID_CONFIRM, true); break; case CANCEL_BUTTON: CatLog.d(LOG_TAG, «Cancel Clicked!, mSlotId: » + mSlotId); cancelTimeOut(); sendResponse(StkAppService.RES_ID_CONFIRM, false); break; >finish(); >

2. Если пользователь нажмет «ОК», будет вызвана команда sendResponse(StkAppService.RES_ID_CONFIRM, true) ; в противном случае — sendResponse(StkAppService.RES_ID_CONFIRM, false) ;.

3. Что, если при помощи действия android.intent.action.stk.command создать такое же диалоговое окно с другим текстом (поддельное) и вывести его на экран за несколько секунд до генерации SIM-картой оригинального сообщения («Подтвердить транзакцию № 1234 на сумму 100 500 рублей»)? В тексте сообщения напишем «Нажмите ОК для закрытия», а кнопки оставим те же — «ОК» и «Отмена».

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

5. Итак, мы остановились на следующем:

  • SIM-карта ожидает ответа от пользователя;
  • Android показывает пользователю первый (поддельный) диалог.
Читайте также:
Gradle что это за программа

private void handleCmdResponse(CatResponseMessage resMsg) < // Make sure the response details match the last valid command. An invalid // response is a one that doesn’t have a corresponding proactive command // and sending it can «confuse» the baseband/ril. // One reason for out of order responses can be UI glitches. For example, // if the application launch an activity, and that activity is stored // by the framework inside the history stack. That activity will be // available for relaunch using the latest application dialog // (long press on the home button).

Relaunching that activity can send // the same command’s result again to the CatService and can cause it to // get out of sync with the SIM. This can happen in case of // non-interactive type Setup Event List and SETUP_MENU proactive commands. // Stk framework would have already sent Terminal Response to Setup Event // List and SETUP_MENU proactive commands. After sometime Stk app will send // Envelope Command/Event Download. In which case, the response details doesn’t // match with last valid command (which are not related). // However, we should allow Stk framework to send the message to ICC.

Здесь сообщается, что «Недопустимым является отклик, который не имеет соответствующей проактивной команды и отправка которого может “сбить с толку” baseband/ril». На деле, если RIL или SIM-карта будут получать от вас неожиданные отклики, последствия могут быть непредсказуемыми. В ходе моего исследования несколько SIM-карт вышло из строя, так и не загрузив меню.

Заключение

Команда AOSP устранила эту ошибку в обновлении Android 5.1.1 для Nexus-устройств (сборка LMY48I).

Вот некоторые из моих патчей:

Автор: Руководитель отдела безопасности мобильных приложений Positive Technologies (англоязычная версия материала)

  • android
  • уязвимости
  • перехват SIM-команд
  • sim-карта
  • Блог компании Positive Technologies
  • Информационная безопасность
  • Разработка мобильных приложений
  • Разработка под Android

Источник: habr.com

Как получить доступ к Android SIM Toolkit? Все, что вам нужно знать в 2023 году!

Доступ к SIM Toolkit Android — это еще одна вещь, которую многие клиенты считают бесполезной на своих смартфонах. Но в вашем телефоне есть гораздо больше, чем просто функция. В большинстве случаев он предварительно устанавливается, когда вы вставляете SIM-карту в свой мобильный телефон. Инструментарий SIM позволяет SIM-карте вашего телефона создавать и передавать команды с SIM-карты на ваше устройство и наоборот.

Думайте о SIM Toolkit как о посреднике, который устанавливает соединение между вашим телефоном и сетевым провайдером, чтобы у них было общее понимание. SIM Toolkit позволяет вашей SIM-карте запускать действия, полезные для выполнения нескольких дополнительных услуг. Если в какой-то момент вы спросите себя «как войти в SIM Toolkit Android?» остановитесь на том, что я проведу вас через это.

Быстрая навигация:

Что такое SIM Toolkit?

SIM Application Toolkit или STK — это системное приложение для управления услугами, предоставляемыми коммунальными сетями. Каждая сервисная сеть уникальна со своими услугами, поэтому у них есть возможность предоставлять базовые услуги, подписки и другие услуги с добавленной стоимостью!

Эти дополнительные преимущества включают гармонии обратного вызова, ежедневные гороскопы, спортивные обновления и многое другое!

По сути, SIM-карта позволяет выполнять важные задачи, такие как отправка/получение смс и прием звонков, которые в любом случае являются основными функциями мобильного телефона.

Связанный: Что такое SIM Toolkit для Android? Полное руководство!

Как войти в SIM Toolkit Android?

Большинство людей не возражают против управления SIM-картой своего телефона. По правде говоря, это не совсем одно из ваших предпочтений.

Следовательно, SIM-карта имеет огромный объем данных, поэтому также важно быть бдительными.

Если вы хотите понять, как попасть в SIM Toolkit Android, вот как:

Источник: www.tecnobreak.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru