随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于这个行业的入门门槛不高,程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQLInjection,即SQL注入。 SQL注入是从正常的WWW端口访问,而且表面看起来跟一般的Web页面访问没什么区别,所以目前市面的防火墙都不会对SQL注入发出警报,如果管理员没查看IIS日志的习惯,可能被入侵很长时间都不会发觉。 ...
http://www.jb51.net//article/1380.htm
在入门篇,我们学会了SQL注入的判断方法,但真正要拿到网站的保密内容,是远远不够的。接下来,我们就继续学习如何从数据库中获取想要获得的内容,首先,我们先看看SQL注入的一般步骤: 第一节、SQL注入的一般步骤 首先,判断环境,寻找注入点,判断数据库类型,这在入门篇已经讲过了。 其次,根据注入参数类型,在脑海中重构SQL语句的原貌,按参数类型主要分为下面三种: (A)ID=49这类注入的参数是数字型,SQL语句原貌大致如下: Select*from表名where字段=49 注入的参数为ID=49And[查询条件],即是生成语句: Select*f...
http://www.jb51.net//article/1379.htm
看完入门篇和进阶篇后,稍加练习,破解一般的网站是没问题了。但如果碰到表名列名猜不到,或程序作者过滤了一些特殊字符,怎么提高注入的成功率?怎么样提高猜解效率?请大家接着往下看高级篇。 第一节、利用系统表注入SQLServer数据库 SQLServer是一个功能强大的数据库系统,与操作系统也有紧密的联系,这给开发者带来了很大的方便,但另一方面,也为注入者提供了一个跳板,我们先来看看几个具体的例子: ①http://Site/url.asp?id=1;execmaster..xp_cmdshell“netusernamepassword/add”-- 分号...
http://www.jb51.net//article/1378.htm
以前学过MFC,我用过的它里面的包装Winsock的两个类CSocket和CAsyncSocket,我一直觉得它哪个事件通知的功能比较不错,特别是在连接的两方收发数据没有一定的规律的时候比较有用,虽然不用它的事件通知也可以实现功能,但是你需要循环检测套接字的状态或者阻塞等待,如果每次都要做这些琐碎的工作岂不是很麻烦,于是我就想对这些功能作一次封装。当然在.net里面采用delegate和event是最好的选择了。下面就是我实现的一些细节: 先讲一下思路:其实这个还是很简单了,估计高手们会不屑一顾了^_^。当套接字开始工作,比...
http://www.jb51.net//article/1254.htm
错误和失败总会不可避免地在应用程序中出现。如果有人在MDB目录之上又添加了一级新的文件夹而“更新”了服务器的目录树,那么将会发生什么?如果MDB名称被更改了会怎样?如果MDB文件被损坏又该如何呢?以上每一个问题都将阻止对数据的成功连接并导致一个失败页面。好的编程实践表明需要尽可能小心地对待任何失败。 在讨论实际命令之前,我们需要了解的是AccessDataSource控件派生于SqlDataSource控件。在大多数情况下,这只是一个背景问题。但是当处理异常的时候,就必须使用实际上存在于(从而以之命名的)SQL数据源对象之中的对象。 软着陆的技术使用的代码将在AccessDataSou...
http://www.jb51.net//article/1244.htm
asp.net2.0如何加密数据库联接字符串在asp.net2.0中,发布网站时,加密web.config,这样可以有效保证数据库用户和密码安全,其步骤如下:1.添加密钥执行:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis-pc"hnlaw"-exp其中"hnlaw"为密钥名称2.添加web.config节点在web.config的<configuration></configuration>之间添加:<configProtectedData><providers><a...
http://www.jb51.net//article/1232.htm
[code]<script>function request(key){if(typeof(this)=="undefined")return false;if(this.length>0) { var s = this.split("&"); for(var i in s) { var sp=s[i].split("=")if(sp[0]==key)return(sp[1]);} return false;}...
http://www.jb51.net//article/1202.htm
CSS本身没有直接提供变换HTML链接下划线的功能,但只要运用一些技巧,我们还是可以让单调的网页链接下划线变得丰富多彩。 一、基本原理 首先,自定义HTML链接下划线的第一步是创建一个图形,在水平方向重复放置这个图形即形成下划线效果。如果要显示出下划线背后的网页背景,可以使用透明的.gif图形。 其次,如果下划线图形的高度较大,则必须适当增加文本的高度,使得一行文本的底部与下一行文本的顶部之间有较大的空间,例如p{line-height:1.5;}。自定义链接下划线示例 第三,为显示出自定义的下划线,必须隐藏默认的下划线,即a{text-decoration:none;}。 第四,为...
http://www.jb51.net//article/1182.htm
代码如下:<style>A:link,A:visited,A:active{TEXT-DECORATION:none}A:hover{text-decoration:none;position:relative;top:1px;left:1px}</style><AHREF="http://homepage.yesky.com/">把鼠标放上来看看效果---</A><AHREF="http://homepage.yesky.com/">这里是天极网页陶吧</A><scriptlanguage="<ahref="...
http://www.jb51.net//article/1167.htm
你也许已经意识到,你可以通过指定每一键接的不同风格以建立CSS翻滚效果,这些链接包括普通的链接link(normal),访问,翻转,以及激活。并且,你可能也知道CSS类型的顺序可以产生效果上的差别,CSS代码后顺序的风格将会取代针对于相同元素的前顺序的风格。建立翻滚效果的类型顺序显得相当重要。 现在让我们看看如何安排链接状态的类型在不产生冲突的情况下支持正常的翻滚效果,并且如何重新安排这些类型顺序以获得不同的翻滚效果。 链接状态 典型的CSS翻滚效果依赖于超链接中四个状态之一的独立类型。可以建...
http://www.jb51.net//article/1141.htm
原文链接:CSSDesign:CustomUnderlines 由AListApart杂志及作者授权翻译。(TranslatedwiththepermissionofAListApartMagazineandtheauthor[s].) 说明:文章中“[补充]”内容系译者所补充添加(来自CSS2.0中文手册),目的是方便读者理解相关内容。 虽然网页设计师通常有大量的方法控制文档如何呈现,但是基本的CSS不能为页面中链接下方的下划线样式提供很多选择。不过只需一点小技巧,你就能获得链接样式显示方式的创作控制。 自定义下划线给一些合适的网站以新的创作机会。自定义下划线还能够被用于为包含在...
http://www.jb51.net//article/1136.htm
