2010年07月28日
by 江小邪
75 Views
0 comments
最近我的网站经常把js脚本注入到数据,清除了又来。先后在网上找了很多的方法,还是没有用的,十分恼火。
首先先告诉大家一个批量清除代码的sql语句。
update 表名 set 字段=replace(字段,’script src=http://3b3.org/c.js>
1、分析那些无聊的人,或者有些病态的人究竟做了些什么 。
通过iis的日志或者microsoft urlscan 日志查看,在一些通过id查询数据库内容的时候后面被人加了一段很长的字符窜。
%%3B%%44%%65%%43%%4C%%61%%52%%45%%类似这样的字符窜,一定是其他的方式编码
首先我们先用工具分析下如此之长的字符窜究竟包含了些什么内容。
通过批量替换工具把%%全部替换成空,然后把得到的字符串通过其他的转码工具,转成字符窜。
;DeCLaRE @S NvArCHaR(4000);SeT @S=CaSt(0×45这里代码去掉了06F007200 aS NvArChAR(4000));ExEc(@S);–
就是一段与通过id查询数据库同时执行的sql,就给数据库某些表的字段加入了js病毒连接。
2、所以我们的原来的防sql注入的字符串就需要升级了。
如果过滤16进制
; 对应 3B
DeCLaRE 对应 4465434C615245
@ 对应 40
NvArCHaR 对应 4E76417243486152
set 对应 536554
CaSt 对应 43615374
as 对应 6153
exec 对应 45784563
- 对应 2D
把16进制的代码用|隔开放到injdata 里面
injdata = “3B|2D|’|;|and|exec|insert|select|delete%20from|update|count|”
然后自己测试下,程序是否拦击了这些16进制的代码,本人测试过是可以拦击的,如果不加入这些是不拦击的
照样可以注入到数据库。
标签Tags:
ASP,
js,
sql,
url,
人,
代码,
工具,
数据,
数据库,
方法,
服务器构建&安全,
程序,
类,
网站,
诫,
连接,
防注入
相关日志
服务器构建&安全
2010年07月28日
by 江小邪
77 Views
0 comments
fhod 邪恶八进制
帝国备份王(Empirebak)简介
EmpireBak是一款完全免费、专门为Mysql大数据的备份与导入而设计的软件,系统采用分卷备份与导入,理论上可备份任何大小的数据库.
可在 http://www.phome.net/ebak2008os/ 下载到
默认账号密码为
admin 123456
登陆后先备份一次数据
备份时可选择备份到的目录。。默认有个safemod
当然也可以是别的..这里以safemod来说了
备份完毕后来到
管理备份目录
打包并下载
把开始备份到的数据可以先下回分析..当然数据库比较大的话可以省略这一步..因为我之前下载已经分析完毕了
(全文…)
标签Tags:
2008,
html,
ie,
mod,
mysql,
PHP,
sql,
web,
webs,
密码,
成功,
数据,
数据库,
服务器构建&安全,
系统,
设计,
诫,
软件
相关日志
服务器构建&安全
2010年07月26日
by 江小邪
76 Views
0 comments
(全文…)
标签Tags:
apache2,
code,
iis6.0,
include,
mysql,
path,
PHP,
PHP,
php.ini,
server,
session,
sql,
url,
web,
上传,
中文,
兼容,
初学者,
区别,
失败,
密码,
应用程序,
数据,
数据库,
方法,
版本,
程序,
网站,
网络编程,
解决,
解决方法,
设计,
诫,
邮件,
错误,
页面,
验证
相关日志
PHP, 网络编程
2010年07月26日
by 江小邪
79 Views
0 comments
不多说了,看代码。自己体会
<?php
echo “濙水河边的PHP演示”;
echo “<br>”;
$db=mysql_connect(“localhost”,”root”,”123456″);
mysql_select_db(“jaycee”,$db);
$rs=mysql_query(“select * from gbook”,$db);
while($row=mysql_fetch_row($rs))
{
echo <<< eod
<table width=”99%” border=”1″ cellspacing=”0″ cellpadding=”0″>
<tr>
<td>$row[0]</td>
<td>$row[1]</td>
</tr>
<tr>
<td>$row[2]</td>
<td>$row[3]</td>
</tr>
</table>
eod;
}
?>
<<<也就是可以让我们在PHP代码内实现一大段的HTML代码,并且可以在其中,使用PHP变量。
淡水河边这厮,找到许多PHP入门呀,php起步呀==的书,从没提到用到这个。郁闷,用不到么?
居然不提。愤怒! (全文…)
标签Tags:
html,
mysql,
PHP,
PHP,
sql,
代码,
函数,
区别,
常用,
数据,
数据库,
方法,
浏览器,
类,
网络编程,
诫,
连接
相关日志
PHP, 网络编程
2010年05月23日
by 江小邪
170 Views
2 comments
<?php
# $Id: js.class.php,v 0.1 p $
// 禁止直接访问该页面
if (basename($HTTP_SERVER_VARS['PHP_SELF']) == "js.class.php") {
header("HTTP/1.0 404 Not Found");
}
# Purpose 封装了一些常用的Javascript代码,以便在PHP中快速调用
class JS{
function JS(){}
#返回上页
# @param $step 返回的层数 默认为1
function Back($step = -1){
$msg = "history.go(".$step.");";
JS::_Write($msg);
JS::FreeResource();
exit;
}
# 弹出警告的窗口
# @param $msg 警告信息
function Alert($msg){
$msg = "alert(\"".$msg."\");";
JS::_Write($msg);
}
# 写js
# @param $msg
function _Write($msg) {
echo "<script language=\"javascript\">\n";
echo $msg;
echo "\n</SCRIPT>";
}
# 刷新当前页
function Reload(){
$msg = "location.reload();";
JS::FreeResource();
JS::_Write($msg);
exit;
}
#刷新弹出父页
function ReloadOpener(){
$msg = "if (opener) opener.location.reload();";
JS::_Write($msg);
}
#跳转到url
#@param $url 目标页
function Goto($url){
$msg = "location.href = ‘$url’;";
JS::FreeResource();
JS::_Write($msg);
exit;
}
#关闭窗口
function Close(){
$msg = "window.close()";
JS::FreeResource();
JS::_Write($msg);
exit;
}
#提交表单
#@param $frm 表单名
function Submit($frm){
$msg = $frm.".submit();";
JS::_Write($msg);
}
#关闭数据库连接
function FreeResource(){
// 数据库连接标志
global $conn;
if (is_resource($conn))
@mysql_close($conn);
}
}
?>
标签Tags:
class,
javascript,
JavaScript&Ajax,
js,
mysql,
PHP,
PHP,
server,
sql,
url,
代码,
常用,
提交表单,
数据,
数据库,
类,
网络编程,
表,
表单,
连接,
页面
相关日志
JavaScript&Ajax, PHP, 网络编程
2010年05月23日
by 江小邪
143 Views
0 comments
mysql my.cnf文件常见优化模块
[mysqld]
port = 3306
server-id = 1
socket = /tmp/mysql.sock
# 避免MySQL的外部锁定,减少出错几率增强稳定性。
skip-locking
# 禁止MySQL对外部连接进行DNS解析
skip-name-resolve
# 指定MySQL可能的连接数量
back_log = 256
(全文…)
标签Tags:
cache,
div,
ie,
mod,
mysql,
path,
PHP,
server,
session,
sql,
人,
代码,
兼容,
函数,
含义,
密码,
属性,
引入,
成功,
搜索,
操作系统,
数据,
数据库,
最快,
服务器构建&安全,
版本,
程序,
类,
系统,
表,
解决,
连接,
错误,
镜像,
页面
相关日志
服务器构建&安全
2010年05月23日
by 江小邪
148 Views
2 comments
eAccelerator和memcache,是目前较为主流的两个可使用在PHP之中的缓存加速工具.
eAccelerator专门为PHP开发,而memcache不仅仅用在PHP之中,其他所有的语言都可以使用.
eAccelerator的主要功能:
1. 缓存PHP文件的执行代码:在被缓存的代码再次被调用时,将直接从内存读取,从而在很大程度了PHP运行的速度.
2. 提供了共享内存操作函数:用户可以将自己的常见非资源对像,保存到内存之中,并可以随时读取出来.
memcache的主要功能:
提供共享内存操作函数,可以保存和读取数据
两者的共同点:
共同点:都提供了共享内存操作函数,可以用来保存和读取自己的数据
两者的区别:
eAccelerator作为PHP的扩展库存在,那么仅在PHP运行时,可以操作和读写共享内存,一般情况,只能由操作共享内存的程序自己调用.
同时,eAccelerator可以缓存PHP程序的执行代码,提升程序的调入和执行速度.
memcache主要作为一个共享内存服务器,其PHP扩展库仅仅作为PHP到memcache的连接库存在,类似MySQL扩展库.因而,memcache可以完全脱离PHP,其共享的数据,可以被不同的程序调用.
根据两者的不同,我们将他们使用在真真需要的地方:
eAccelerator主要用于单机PHP提速,缓存中间数据.对于实时性高,但数据操作量小的情况下,非常实用.
memcache用于分布式或者集群系统,多台服务器可以共享数据.对于实时性高,同时数据操作量大的情况下,非常实用.
标签Tags:
cache,
mysql,
PHP,
sql,
代码,
函数,
区别,
工具,
提速,
数据,
服务器构建&安全,
程序,
类,
系统,
连接
相关日志
服务器构建&安全
2010年05月23日
by 江小邪
195 Views
3 comments
正则表达式匹配,其中:
* ~ 为区分大小写匹配
* ~* 为不区分大小写匹配
* !~和!~*分别为区分大小写不匹配及不区分大小写不匹配
文件及目录匹配,其中:
* -f和!-f用来判断是否存在文件
* -d和!-d用来判断是否存在目录
* -e和!-e用来判断是否存在文件或目录
* -x和!-x用来判断文件是否可执行
flag标记有:
* last 相当于Apache里的[L]标记,表示完成rewrite
* break 终止匹配, 不再匹配后面的规则
* redirect 返回302临时重定向 地址栏会显示跳转后的地址
* permanent 返回301永久重定向 地址栏会显示跳转后的地址
一些可用的全局变量有,可以用做条件判断(待补全) (全文…)
标签Tags:
301,
access,
cookie,
css,
domain,
html,
ie,
include,
js,
PHP,
seo,
server,
sql,
swf,
web,
判断,
图片,
密码,
服务器构建&安全,
正则表达式,
浏览器,
网站,
自定义,
表,
重定向,
链接,
错误,
页面
相关日志
服务器构建&安全
2010年05月23日
by 江小邪
81 Views
0 comments
Windows
1、停止mysql服务:打开命令行窗口CMD,net stop mysql
2、 用另外一种方式启动Mysql:在命令行进入到mysql的安装路径下的bin目录下使用mysqld-nt.exe启动:mysqld-nt –skip-grant-tables 注意:此时CMD窗口不能关闭。
3、进入Mysql:另外打开一个命入令行窗口,在bin目录 下执行mysql,此时无需输入密码即可进入。
>use mysql
>update user set password=password(“new_pass”) where user=”root”;
>flush privileges;
>exit
4、使用任务管理器,找到mysqld-nt的进程,结束进程!5、重新启动mysql 服务,net start mysql 就可以用新密码登录了。
Linux
1、关闭 Mysql: 如果 MySQL 正在运行,首先杀之 killall -TERM mysqld
2、另外的方法启动 MySQL :bin/safe_mysqld –skip-grant-tables &
3、可以不需要密码就进入 MySQL 了。
>use mysql
>update user set password=password(“new_pass”) where user=”root”;
>flush privileges; 注意点同上
4、重新杀 MySQL ,用正常方法启动 MySQL 。
标签Tags:
mysql,
sql,
密码,
方法,
服务器构建&安全
相关日志
服务器构建&安全
2007年02月9日
by 江小邪
2,085 Views
0 comments
最近在做网站的时候,遇到这么一个奇怪的问题,无法正确执行sql语句,response了一下,原来sql语句里面的中文字段都成了乱码,怀疑是编码的问题,但是怎么修改都无法起作用,郁闷ing!
为此再网络上一搜再搜,总算黄天不负有心人,把问题给办了。
<%@ codepage=936%>简体中文
<%@ codepage=950%>繁体中文
<%@ codepage=65001%>UTF-8
codepage指定了IIS按什么编码读取传递过来的串串(表单提交,地址栏传递等)。
出乱码的原因也就是网站要整合的时候模块编码不一样引起的。
最方便的方法如下:
不要转换任何模块网页的编码该utf-8的还是utf-8,该Gb22312的还是Gb2312
在Utf-8模块的包文件(如conn.asp,但是要注意conn.asp必须是在第一行调用)最前面加上
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%Session.CodePage=65001%>
在GB2312模块的包文件最前面加上
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%Session.CodePage=936%>
标签Tags:
ASP,
ASP,
server,
sql,
出现乱码,
数据,
解决方法
相关日志
ASP