Micro山寨板+Android制作另类蓝牙键盘

2015-01-19 11:33:14 15 11273
0x00    吐槽

原创非首发,只为分享

昨天代码快写完了,一点保存,居然消失了,这是在逗我吗?

0x01        原因

我制作这个是因为一来可以做个蓝牙通讯的例子,为后续的键盘通讯监控做准备。二来HID攻击时,可以按照自己的输入来执行,就是效率有点低。三来是为了我方便使用树莓派。

我有时会把树莓派带出去做些移动,无线,硬件方面的渗透测试,身边没有什么显示器,键盘,网线等。

那么问题来了,该怎么和树莓派保持通讯呢?

一般可能会给树莓派配个无线网卡,让树莓派优先加入到手机的热点中,这样就可以ssh或者vnc了。但这种方法,偶尔树莓派会抽疯,死活连不上。

我一般采用手机通过usb共享给树莓派网络,这样物理连接比无线可靠多了,然后树莓派获取固定ip,然后手机ssh或者vnc。虽然这种方法比上一种可靠许多,但是树莓派有时还会抽疯,死活连不上。

所以在上面的方法之后,有的人可能会想到带个键盘。那么问题是键盘那么大,屌不屌?那么采用硅胶键盘,这种东西用了就会知道,底下没硬东西垫着,连键连到爆。所以

用这个两块小板子一组合,物理键盘就ok了。

0x02        准备

一个micro板子带排针(正版我还没有体验过。。.)//不到30元
一个蓝牙模块(我使用的是HC-06)//不到20元
四根杜邦线
一个Android

0x03        组装

连线图。。。还没有画。
就是把蓝牙的vcc,gnd接到micro板子上的vcc,gnd上,把蓝牙的txd,rxd接到micro板

子上的rxd,txd上。

图片





从图中可以看出两个叠加起来也不大(应当忽略排针,杜邦线,实战时是直接焊上去的),完全可以嵌到其他设备上。

0x04        实现代码<安卓端是使用bluetooth spp进行通讯的。蓝牙模块的密码是1234,可修改。

其实也可以直接写个安卓或者ios程序,直接写成一个键盘程序,每一个键位通过蓝牙传输过去,还可以做出触控板当作鼠标。

那么问题来了-

谁会写安卓/ios程序?


注释和程序框图陆续添加ing

0x05        测试视频

http://pan.baidu.com/s/1o6GTS

0x06    使用说明

默认是输入什么,就输出什么。
输入"^p"启动按模式,就是按下键位不松开,每次输入一个按键,以此实现组合键。
输入"^e"结束按模式,释放所有按键,就是把上面依次按下的键位松开,实现组合键
输入了"^p"后输入完组合键一定要输"^e",要不后面的输入会异常的。

特殊键值表(输入不区分大小写,eg:输入win键,输入left_gui即可)

Key        Hexadecimal value        Decimal value
KEY_LEFT_CTRL         0x80         128
KEY_LEFT_SHIFT         0x81         129
KEY_LEFT_ALT         0x82         130
KEY_LEFT_GUI         0x83         131
KEY_RIGHT_CTRL         0x84         132
KEY_RIGHT_SHIFT         0x85         133
KEY_RIGHT_ALT         0x86         134
KEY_RIGHT_GUI         0x87         135
KEY_UP_ARROW         0xDA         218
KEY_DOWN_ARROW         0xD9         217
KEY_LEFT_ARROW         0xD8         216
KEY_RIGHT_ARROW         0xD7         215
KEY_BACKSPACE         0xB2         178
KEY_TAB                 0xB3    179
KEY_RETURN         0xB0         176
KEY_ESC                 0xB1         177
KEY_INSERT         0xD1         209
KEY_DELETE         0xD4         212
KEY_PAGE_UP         0xD3         211
KEY_PAGE_DOWN         0xD6         214
KEY_HOME         0xD2         210
KEY_END                 0xD5         213
KEY_CAPS_LOCK         0xC1         193
KEY_F1                 0xC2         194
KEY_F2                 0xC3         195
KEY_F3                 0xC4         196
KEY_F4                 0xC5         197
KEY_F5                 0xC6         198
KEY_F6                 0xC7         199
KEY_F7                 0xC8         200
KEY_F8                 0xC9         201
KEY_F9                 0xCA         202
KEY_F10                 0xCB         203
KEY_F11                 0xCC         204
KEY_F12                 0xCD         205

关于作者

anymous8篇文章186篇回复

评论15次

要评论?请先  登录  或  注册