Javaweb怎样防止恶意在浏览器上输入地址就改了别人的密码

来源:热点事件 时间:2016-07-27 10:27:45 阅读:

【www.zhuodaoren.com--热点事件】

Javaweb怎样防止恶意在浏览器上输入地址就改了别人的密码(一)
预防、解除恶意网页代码的一些常见方法

预防、解除恶意网页代码的一些常见方法

############################

防患未然篇

############################

1、禁止修改注册表。方法为:

展开注册表到

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System

下,新建一个名为DisableRegistryTools的DWORD值,并将其值改为“1”,即可禁止使用注册表编辑器Regedit.exe。

如果我们自己要修改注册表怎么办?请看下面的的“牢羊补牢篇”。

Windows 2000/xp/2003用户,还可以在把服务里面的远程注册表操作服务“Remote Registry Service”禁用,以免被恶意代码利用。

具体方法是:

开始--》设置--》控制面板--》管理工具--》服务

将Remote Registry Service项禁用即可。

4、及时打系统补丁,尤其是及时把IE升级到最新版本,可以在很大程度上避免IE漏洞带来的安全隐患。

打系统补丁的方法是:

开始-->Windows Update...【Javaweb怎样防止恶意在浏览器上输入地址就改了别人的密码】

启动IE,用菜单:工具--》Windows update..

升级程序会自动检测你需要打哪些补丁

3、用GreenBrowser 或 Maxthon(MYIE2) 浏览网页。

它们拥有许多优秀的附加功能,尤其是禁止变更主页功能,能够让网友们冲浪时得到最大的便利。

GreenBrowser下载:

/indexgb.htm

MYIE2[Maxthon(傲游)的前身]下载:

/html_chs/home.htm

Maxthon(傲游)下载:

/chs/index.htm

至于GreenBrowser 或 Maxthon(MYIE2) 哪个更合适你,可以参考:

王者之争——GreenBrowser VS Maxthon

4、下载安装微软最新的Microsoft Windows Script,可以很大程度上预防恶意修改。

5、相当多的恶意网页是含有有害代码的ActiveX网页文件,因此在IE设置中将ActiveX插件和控件、Java脚本等禁止,或者把WSH(Windows Scripting Host)删除就在很大程度上避免中标。

1)禁止脚本运行

打开资源管理器,点击“工具->文件夹选项->文件类型”,在文件类型中将后缀名为“BS、BE、JS、JSE、WSH、WSF”项全部删除,这样这些文件就不会被执行了(双击在前面您搜索到的*.js、*.bs文件试试)。

在IE窗口中点击菜单:工具→Internet选项,在弹出的对话框中选择“安全”标签,再点击[自定义级别]按钮,就会弹出“安全设置”对话框,把其中所有ActiveX插件和控件以及Java相关全部选择“禁用”即可。

2)删除WSH

Windows 98:

开始--》设置--》控制面板--》“添加/删除”程序

选择“Windows 设置/附件”,并单击“详细资料”,取消“Windows Scripting Host”选项,完成后单击[确定]按钮即可。

Windows 2000/XP:

双击“我的电脑”图标,然后执行“工具/文件夹选项”命令,选择“文件类型”选项卡,找到“BS BScript Script File”选项,并单击[删除]按钮,最后单击[确定]即可。

不过这样做以后的一个不便之处就是如果网页中使用了ActiveX插件、JavaScript(js) 或者 VBScript(vbs) 脚本,则该网页也将不能正常显示。有利就有弊,你还是自己看着办吧。

6、安装杀毒软件并打开网页监控、文件监控和内存监控。

【Javaweb怎样防止恶意在浏览器上输入地址就改了别人的密码】

可供我们选择的杀毒软件很多,国产的如瑞星、江民KV、金山毒霸等,国外的如赛门铁克NORTON、熊猫卫士、mcafee、趋势科技、卡巴斯基等,冠群金辰与美国CA合作的KILL等。

我自己用的是瑞星2003,至今还未中过标。

7、把fdisk.exe、deltree.exe、format.com等危险的命令文件改名,以免被恶意代码利用,造成不必要的损失。

8、不要轻易访问浏览一些自己不了解的站点,特别是那些看上去美丽诱人的网址,否则吃亏的往往是我们。

【Javaweb怎样防止恶意在浏览器上输入地址就改了别人的密码】

9、为WINDOWS系统文件夹里的HOSTS文件设置只读属性。

win 98: %SystemRoot%\hosts【Javaweb怎样防止恶意在浏览器上输入地址就改了别人的密码】

win 2000/xp: %SystemRoot%\system32\drivers\etc\hosts

【Javaweb怎样防止恶意在浏览器上输入地址就改了别人的密码】

HOSTS文件里保存有WINDOWS系统记录的IP地址与域名的对应关系。

有些网页恶意代码会修改这个文件迫使我们访问恶意网页/网站。

10、禁止访问已知的恶意网页/站点。方法是:打开IE,点击菜单“工具--》Internet选项--》内容--》分级审查”

点击[启用]按钮,会弹出“分级审查”对话框,然后点击“许可站点”标签,输入不想去的网站网址,按[从不]按钮,再点击[确定]。

关于IE分级审查功能的更多内容可参考下面这篇文章:

IE中的分级审查功能[图]

另外一种实现方法是修改HOSTS文件,操作方法可参考:

利用Hosts文件防止“QQ病毒”

############################

亡羊补牢篇

############################【Javaweb怎样防止恶意在浏览器上输入地址就改了别人的密码】

明枪易躲,暗箭难防。如果不小心中标了,可以参考以下一些常见问题的解决办法。

Javaweb怎样防止恶意在浏览器上输入地址就改了别人的密码(二)
如何防止黑客再次通过Web攻击系统

如何防止黑客再次通过Web攻击系统

黑客是一个很神秘的东西,好像说到黑客就会有危险似的,其实我们平常是不会遭遇黑客的,但是偶尔有黑客的攻击是无法避免的,不能根治只能预防,防止黑客再次通过Web攻击windows系统的详细介绍如下:

黑客攻击windows系统,有时会对我们的电脑造成损失,了解一些黑客攻击电脑的常用手段,对我们防范电脑黑客的攻击,减少由此带来的损失,不失为一种明智之举。以下几中原因导致黑客们使用Web进行攻击:

1. 服务器漏洞

由于存在漏洞和服务器管理配置错误,Internet Information Server(IIS)和Apache网络服务器经常被黑客用来攻击。

2. Web服务器虚拟托管

同时托管几个甚至数千个网站的服务器也是恶意攻击的目标。

3. 显性/开放式代理

被黑客控制的计算机可以被设置为代理服务器,躲避URL过滤对通信的控制,进行匿名上网或者充当非法网站数据流的中间人。

4. HTML可以从网页内完全不同的服务器嵌入对象

用户可以从特定网站请求浏览网页,只自动地从Google分析服务器等合法网站下载对象、广告服务器、恶意软件下载网站、或者被重新导向至恶意软件网站。

5. 普通客户机可能是黑客的试水石

Internet Explorer、Firefox等各种浏览区以及Windows操作系统中包含了很多可以被黑客利用的漏洞,特别是在用户经常不及时安装补丁的情况下。黑客会利用这些漏洞在不经用户同意的情况下自动下载恶意软件代码——也称作隐藏式下载。因此他们可能经常变成被黑客控制的傀儡,在访问您网站的同时,给您的Web应用带来风险。

6. 各种移动代码、跨站脚本在网站上被广泛使用

在浏览器中禁用JavaScript、Java applets、。NET应用、Flash或ActiveX似乎是个好主意,因为它们都会在您的计算机上自动执行脚本或代码,但是如果禁用这些功能,很多网站可能无法浏览。这为编码糟糕的Web应用开启了大门,它们接受用户输入并使用Cookies,就像在跨站点脚本(XSS)中一样。在这种情况下,某些需要访问与其他开放页面的数据(Cookies)Web应用会出现混乱。任何接受用户输入的Web应用(博客、Wikis、评论部分)可能会在无意中接受恶意代码,而这些恶意代码可以被返回给其他用户,除非用户的输入被检查确认为恶意代码。 新番茄花园所有系统资料来源于互联网,仅供学习和研究使用,请测试后请于24小时内自行销毁,如有侵犯你版权的,请来信指出,本站将立即改正。

Javaweb怎样防止恶意在浏览器上输入地址就改了别人的密码(三)
巧妙设置组策略 防止IE主页被恶意修改

1.Win7中“运行”命令在哪里?

直接 WIN+R 就会出现的或者右键开始 属性

点开始菜单中的自定义

在里面勾上运行

就可以在开始菜单中显示运行了

2. 你是否遇到过这样的情况,浏览器启动时就自动加载了一个你自己“毫无知情”的网站,甚至频繁弹出窗口,并打开相应的网站。其实,这都是IE浏览器被恶意修改的结果,为了防止IE再次被“侵袭”,可以通过组策略来对其进行“保护”。

首先执行“开始”→“运行”命令,在“运行”命令框中输入“gpedit.msc”,打开“组策略”编辑器。依次打开“本地计算机策略”—“用户配置”—“Windows设置”—“Internet Explorer维护”,此时我们可以看到在下面有浏览器用户界面、连接、URL、安全和程序项,这些都是可以修改的。

与浏览器主页相关的就是URL一项,在左侧的Internet explorer维护下双击URL子项,然后双击右侧的“重要URL”打开自定义URL对知框,在这里可以进行默认主页、搜索栏地址等,与我们有关的是自定义主页URL,选中该项,然后在主页URL的空白处输入自己要设置的主页,例如/retype/zoom/c2566e671ed9ad51f01df267?pn=2&x=0&y=1268&raww=429&rawh=261&o=png_6_0_0_205_113_482_293_892.979_1262.879&type=pic&aimh=261&md5sum=cc67f31883d958cd83a8766c4c01f1b0&sign=0f04cd908e&zoom=&png=35213-92788&jpg=0-0" target="_blank">Javaweb怎样防止恶意在浏览器上输入地址就改了别人的密码(四)
JavaWeb开发的环境配置   摘 要:本文主要介绍了Java Web开发环境的配置过程,包括Java运行的环境安装、Tomcat服务器安装和SQL Server2000数据库安装以及Eclipse集成环境的安装。

  关键词:Java Web;开发环境;配置
  中图分类号:TP311.10 文献标识码:A DOI:10.3969/j.issn.1003-6970.2013.07.015
  本文著录格式:[1]田平.Java Web开发的环境配置[J].软件,2013,34(7):40
  0 引言
  Java具有全面向对象、安全可靠、平台无关性、一次编程满足多地运用的特点,该技术在JSP和Servlet技术推出后成为Web开发的首选工具[1]。目前很多企业开发出的软件产品都支持Java Web开发,在这情况下如何选择Java Web的开发环境成为了软件开发人员研究的重要内容。简单的来说,软件开发人员需从Java运行环境、 Web服务器、代码编辑器和数据库四个方面入手就可以进行实际的开发操作,目前较为常用的组合是SQL Server2000与Tomcat5.0以及MyEclipse4+Eclipse3.1。
  1 Java运行环境的安装
  Java具有的平台无关性主要体现在软件系统必须安装在Java运行环境中,通常情况下,Java的运行环境和基本的工具包都存在JDK中,实际操作可以选用JDK7.0,可以直接从Java官网上下载。下载后可直接进行安装,安装出来的JDK和JRE两个目录,其JDK包含了Java的基本的工具包,而JRE则是java的基本运行环境。安装结束后需对系统环境进行变量设置,右键我的电脑,选择属性/高级/环境变量,新建一个环境变量JAVA_HOME,一般而言其设定值为C:\Program Files\Java,用来存储java的所有内容,将环境变量修改为path。
  2 Tomcat服务器的安装
  Tomcat是java web安装中的重要内容,可以给JSP和Servlet提供运行容器,并且还可以为web服务器提供数据库连接池和静态HTML网页处理容器等。在实际的java web开发中可以将tomcat作为web服务器,tomcat可直接从网站下载,下载后进行相关安装。安装时需要注意完全安装,同时将服务器口号设置为默认的8080,并且还需设置管理员名称和密码[2]。最后需选择java前面已经安装完毕的运行目录,这是最为重要的步骤,tomcat作为支持java运行而存在的,如未进行该步操作,tomcat将无法支持java的正常运行。安装结束后,在浏览器上输入http://localhost:8080,就可以进入到tomcat的主页。点击进入管理界面,输入用户名和密码,进入应用程序中进行相关操作了。
  3 SQL Server2000数据库的安装
  SQL Server2000通常选择企业版或者个人版进行相关操作,如选用企业版进行操作时,需保证操作系统为服务器版本。该部分安装操作较为简单,但是偶尔会出现安装失败或者文件挂起而导致安装无法顺利进行。如出现这种情况,则需要将本机原安装的SQL Server2000删除,并且相关子文件也需删除。部分机器会出现java web应用程序无法连接数据库情况,在一般是因为数据服务器端口未设置在服务器中。这就需要安装该数据库的sp4补丁程序,从网站下载sp4补丁,然后安装在setup.bat文件中即可。
  4 Eclipse集成环境的安装
  Eclipse是一个基于java的开放源代码的可扩展平台。该平台只是单纯的一个框架和一组服务器,通常作为插件组件来进行java web开放环境构建。Eclipse默认支持java程序的开发,人们只需在安装Eclipse后在继续安装My Eclipse插件就可以直接进行java web的开发工作了。通常可以选用My Eclipse 和Eclipse3.5进行组合,其中Eclipse3.5可以直接从网上下载,然后进行相关安装,安装时需选择好根目录[3]。成功安装后指定相关工作区域,再进行My Eclipse安装,即可进行相关开发操作。为了方便目标文件和源文件进行区别存储,人们可以选择window界面,进入到preferences/java/build path中,然后将folders设置为ok即可。
  5 结语
  Java web开发环境的配置具有多种组合形式,但其根本原理几乎一致,只是在具体操作上存在部分差异。相关开发人员在进行开发环境搭建时,可以根据个人喜好和习惯进行组合,这样可以极大的满足自身的开发习惯,提高开发效率。值得注意的是,在开发环境的搭建其根本目的是为了java web软件开发创造条件,积极学习和掌握相关的java web开发技术才是最为核心的内容。
  参考文献
  [1]王秀英.基于Windows平台的JSP开发[J].微型电脑应用.2009(08)
  [2]王晓岩.在LINUX下配置JAVA开发环境[J].硅谷.2009(02)
  [3]程芳,陈凯辉,曹娟.基于JAVA的在线代理的实现[J].河北省科学院学报.2009(01)

Javaweb怎样防止恶意在浏览器上输入地址就改了别人的密码(五)
基于B/S模式的Java编程案例分析

  摘  要: 目前Java教学中存在偏重理论知识的现象,在指导学生完成一个完整的项目时没有根据项目的实际需求来搭建项目架构、建立数据库。针对这一教学现状,基于MVC编程模式和项目架构的规范化,结合项目实际需求进行分析,通过对业务逻辑分析和简单的B/S模式编程案例的学习,进行代码的理解、分析,对理论知识和实际项目的操作做一个衔接,让学生能够学会运用书本上的知识,从而提高其Java 程序设计的综合能力。

  关键词: Java 程序设计; B/S模式编程案例分析; MVC编程模式; 理论和实际的衔接
  中图分类号:TP311.1          文献标志码:A     文章编号:1006-8228(2014)12-48-02
  Case study of Java programming based on B/S mode
  Sun Yawen
  (The Information Center of Nanjing University of Technology, Nanjing, Jiangsu 210009, China)
  Abstract: The current Java teaching only focuses on theoretical knowledge, which doesn't guide students to set up the project structure and the database according to the actual need of the project. Based on the MVC mode and standardization of project structure, the actual requirements of the project are analyzed. Through analyzing the business logic and studying on the simple case of B/S mode programming, code is comprehended and analyzed, theoretical knowledge and practical operation are connected. It enables the students to understand how to use the programming knowledge from books, which will improve their comprehensive ability of Java programming.
  Key words: Java programming; B/S model programming case analysis; MVC programming model; the connection between theoretical knowledge and practical project
  0 引言
  Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,具有卓越的高效性、安全性、通用性和平台移植性,因此被广泛应用于个人PC、网站平台、数据管理等一系列系统开发中。Java的广泛应用使Java人才的需求量也越来越大,许多高校的计算机专业将Java程序设计语言作为主要课程。尽管如此,在IT行业中往往还是很难招聘到合格的Java工作人员[1]。高校在Java教学中没能将理论与实际项目紧密联系起来是一个重要原因。因此,本文探讨了Java编程案例。
  1 MCV编程模式
  MVC是一种多层的设计创建Web应用程序的模式,其目的在于将应用程序的输入、处理和输出分开[2]。
  Model是指业务模型,表示数据和业务处理。模型持有所有的数据、状态和程序逻辑。模型与数据格式没有关系,能为多个视图提供数据。例如Java Bean。
  View指用户看到并与之交户的界面,显示数据库记录,最典型的就是JSP、HTML。
  Controller是指控制器,是应用程序中处理用户交互的部分。负责从视图读取数据,控制用户输入,并向模型发送数据[3]。例如servlet、action。
  MVC分层有助于管理复杂的应用程序,同时也让应用程序的测试更加容易。
  2 逻辑分析
  2.1 B/S模式
  B/S(Browser/Server)是浏览器和服务器结构,它是建立在广域网、浏览器之上的,主要事物逻辑在服务器端(Server)实现,只有极少部分在前端(Browser)实现。所以不论时间、地点、人物,以何种方式接入,只要网站允许,都可以访问。而用户和网站的交互实质上就是访问并且操作数据库的过程,整个网站程序只是将数据库里面的数据用一种用户更能接受的形式表现出来,再从用户的可操作性出发,让用户通过浏览器页面就可简单轻松地对数据库进行操作。
  2.2 过程分析
  首先,我们需要连接数据库,按照项目需求建立许多张表,并且知道每张表的结构和联系,然后考虑如何对数据库进行具体操作。将需要对数据库中的表进行的各种操作都用SQL语句完成,并写成一个个方法,统一放在entityutil的package中,等待上级程序来调用。而调用程序则放在action的package中,它就像一个调度,根据前端页面传递的需求来选择调用entityutil中哪个方法的SQL语句来实现对数据库的操作。
  程序的实现过程:当用户点击网页上的一些按钮时,便是要对数据库进行操作。比如很简单的一个修改密码的操作,当用户登录完成并点击修改密码按钮时,就会跳转到相应的页面或是弹出相应的输入框,这个是在前端页面上控制的,紧接着根据修改要求输入新旧密码,或是新密码。这个请求和输入的密码会被页面的form传入action中,在action中进行选择,找到相应的entityutil中的具体方法语句并传入参数以调用,最后entityutil中的SQL语句按照要求被执行,完成数据库的更新,此时修改密码完成。其实,从逻辑上分析这就是一个前端发送请求,后端层层调用的过程。下面我们通过一个案例分析,深入了解具体的流程和代码应该怎么去完成。   3 案例分析
  以最简单的B/S模式网站登录系统为例,在用户页面输入登录名、密码,点击登录,后返回结果。若用户名、密码正确,则进入网站系统;若用户名或者密码不正确,则返回提示信息,显示登录失败,需要重新登录。
  3.1 数据库表格设计、连接
  在数据库中建立一张名为t_user的表格,表格中最基本的需要定义user_id、user_name、password三列,以user_id为主键。
  在src中建立一个package用来存放数据库连接的程序。
  创建一个以JDBC连接数据库的程序。
  3.1.1 加载JDBC驱动程序[4]
  通过java.lang.Class类的静态方法forName(String  className)实现。
  Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
  3.1.2 提供JDBC连接的URL
  String dbURL="jdbc:microsoft:sqlserver://localhost
  (数据库IP地址):3306(端口号);
  ・ DatabaseName=databasename(数据库名称);
  3.1.3 创建数据库的连接
  向java.sql.DriverManager请求并获得Connection对象,再使用Driver Manager的getConnection(String url,String username,String password)方法传入此连接的数据库的路径、数据库的用户名和密码。
  userName="username(用户名)";
  String userPwd="password(密码)";
  try Connection con=DriverManager
  .getConnection(dbURL, userName, userPwd);
  System.out.println("数据库连接成功!");
  catch(SQLException se) {
  System.out.println("数据库连接失败!");
  se.printStackTrace(); }
  数据库连接是否成功即可根据现实的提示判断。
  3.2 JSP页面设计及用户数据输入
  在JSP页面的form中指定将要跳转的action,并且用post方法向服务器上传递参数,提交到相对应的action中。
  用户名:
  密码:
  3.3 web.xml配置文件
  web.xml是网络程序中的一个很重要的配置文件,可通过 servlet元素分配一个名称给servlet或JSP页面。
  loginAction
  action.LoginAction
  loginAction
  /loginaction
  通过action名称找到相应的java文件去执行。
  3.4 在src中创建一个名为entity的package
  用于存放entity的程序,统一定义变量,封装get和set方法,以供程序调用。
  3.5 在src中创建一个名为action的package,用于存放action类的程序
  Action类是用户请求和业务逻辑之间的桥梁,每个Action充当客户的一项业务代理。
  通过web.xml找到相对应的LoginAction.java文件,找到login()方法,传入参数。
  private void login(HttpServletRequest request,
  HttpServletResponse response)
  throws ServletException, IOException { ……
  try {
  sysuser=SysuserUtil.checkSysUser(database,
  loginName,password);
  }
  ……
  }
  3.5.1 获取页面传来的参数loginName和password,并且定义跳转页面url
  String userName=CharSet
  .toGB2312(request.getParameter("user_name"));
  String password=request.getParameter("password");
  String url="./front/main.jsp";//目标url
  3.5.2 调用checkSysUser()从数据库中进行查询
  如果返回的结果不为空,则将结果放入session中,并且跳转至指定的url页面;如果返回结果中参数为空,即输入的用户名密码在数据库中没有此记录,则弹出窗口显示:'对不起,用户名或密码不正确,或您没有权限进入!并返回登录界面。
  sysuser=SysuserUtil.checkSysUser(database,loginName,password);
  if (sysuser.getUser_name() != null && !sysuser   .getUser_name().equals("")) {
  request.getSession().removeAttribute("sessionInfo");
  sessionInfo.setUser_name(sysuser.getUser_name());
  request.getSession().setAttribute("sessionInfo",sessionInfo);
  } else {out.println(""); }
  out.println("");
  3.6 在src中创建一个名为entityutil的package
  将对数据库表格的具体操作程序放入此类程序,更利于对数据库的数据处理。在SysuserEntity.java中找到login()中调用的checkSysUser(Database database,String userName,String password)方法,进行数据库处理。
  String sql="Select user_name From databasename.dbo
  .t_user Where user _name='" +userName + "' "
  + "And password='"+ password + "'";
  try resultSet=database.getRS(sql);
  while (resultSet.next())
  sysuser.setUser_name(resultSet.getString("user_name"));
  具体的SQL语句:从数据库databasename的t_user表格中,找出user_name和password与传入参数相同的结果中的user _name,并将结果集放入sysuser中返回给action中进行判断登录是否成功。至此整个用户登录操作全部完成。
  4 结束语
  对于Java编程来说,理论知识是基础,此外还需要阅读一些经典的源代码,模仿、修改、编写,以实现相应的功能。本文详细介绍了一个最简单的登录功能的实现,从逻辑结构的分析到功能代码的编写,让读者学会从分析项目需求开始,建立、连接数据库,在MVC模式下搭建项目的整体架构,编写、修改代码,了解怎么去调用、执行、调试,由浅入深地完成一个完整的项目。Java的功能够强大,基于Java的编程可以创建出更多更好的应用,研究Java教学中的编程案例,可以帮助我们更好地把Java的理论教学与实际应用紧密结合起来,培养出Java系统开发的合格人才。
  参考文献:
  [1] 梁志红,肖欣欣.Java程序设计的教学思考[J].计算机教育,2013.16.
  [2] 张超.基于JSP的MVC设计模式探究[J].电脑与信息技术,2013.21(4).
  [3] 刘宏尧.MVC模式与Java程序设计架构[J].齐齐哈尔大学学报,
  2006.1.
  [4] 齐鲲鹏,顾宏,唐达.JSP数据库连接技术在构建信息网站中的研究[J].
  控制工程,2002.9(5).
  [5] 靳晋.基于Java技术实现数据库的连接[J].才智,2011.18.

本文来源:http://www.zhuodaoren.com/shenghuo299593/

推荐访问:javaweb修改密码代码 javaweb网上书城
扩展阅读文章
热门阅读文章