逆工学、統計データファイルからインスリンポンプコントローラー
-
13-09-2019 - |
質問
この場合はありますがご了承くださいグレーゾーンの対象が、私の意図ではないので、私の意図はないと反倫理的な議論のリバースエンジニアリング.
私は1型糖尿病におけるポンプ。私は OmniPod ユーザーは、使い捨てのポッドが付着しに身体を払拭インスリンのための3日間です。この制御による個人糖尿病manager[PDM](み)るかインスリン注入時のお食事は、bloor糖読み取りを行い、下記のように構成されて食品指数carbカーです。
(出典: myomnipod.com)
新PDMには、USBポートのためのデータのダウンロード本ソフトウェアは無料でWindowsユーザー(パッケージと呼ばれCoPilot)もありませんMacます。
に差し込むのPDMもMacで取付けようその他のUSB機器をいれてく読み出し可能な量単一のファイルでIBFいます。重量で16KB.
私の初めての本能にしたいと考えていますを通じてテキストエディタ開発事業の一環として行われた非常にバイナリのみファイルです。そしてそれを文字列(以下参照)を開設することが大きな仕事でしたが、六角レンチます。がん及していくには、かなりの時間情報のほかの文字列。無圧縮形式の詳細などはなかったです。
$ strings omnipoddata.ibf
Insulet
OmniPod
basal 1
Post-meal
e-meal
Pre-meal
e-bedtime
Pre-bedtime
.(@P
.(@P
.(@P
うにし、次のステップです。私は動的言語んので、他のRuby用すると、エラーになります。ある試験駆動の逆行す。
どのデータを探していを得るので、情報をい図表情報を得るの自分の進歩(インスリン摂取量、血糖値の読み取りを行い、タイムスタンプ);すべてのWindowsソフトウェアパッケージです。
解決
んは探ります。がんの方の数値が符号化された:
- Int値(1,2,4バイト、各種endianness)
- 浮動小数点の様々なサイズ)
- 固定小数点または他の不思議な形式
ご利用をもつ数字される方は是非ご参加くださいれいにすることができるので、データを画面に表示します。うに思うとともに、ファイルになるのではない。こう過ごせばよいかを教えてくれるデータは、してください。
そして、次にあなたもタイムスタンプ.タイムスタンプは通常のも簡単で、いずれも32ビットの符号なし整数では、良いボールパークの範囲(時間)+/-数100,000).ほint近くにあります。
いすべてのことで、人手による六角レンチをエディタまたは書けないます。一度取得する開始一部のデータを探します。る人たちを見かけることがあるんだけるような興味深い。幸運を祈っています。
他のヒント
私は、既知の値の六角表現を探し始めると思います。 (写真のように)デバイスがスクリーンを持っていますか、ウィンドウで見ることができますか?
あなたは、言って、あなたがWindowsのバージョンの中に発見している六角における一連の番号を見つけることができる場合は、、あなたは「レコード」フォーマットを把握することができるかもしれません。それを見ると、それはヘッダ/バージョン情報のいくつかの種類、および16進数の数値を持つ一連のレコードが含まれているようです。
それはあなたに良い出発点を与える必要があります。
私は、WindowsのバージョンのVMを実行し、それを組み立てる逆にollydbg使用します。その代わりに、バイナリファイルを見つめ、オフセットものと相関する変数を推測するの最善の策である。
あなた自身のインスリンポンプをいじりしかし、おそらく賢い考えではありません。ファイルには、ポンプを操作すると仮定ます。