Atitit.木马病毒websql的原理跟个设计

1. Keyword

Wsql

{

var sql="select "+p.txt+" as t,"+p.v+" as v from "+p.tb;

logx(sql);

var mp="&$method=com.attilax.sql.SqlService.exe&$callback=page_load_callback&$mod=userMod&$view_store_path=com/attilax/order&$op=insert¶m1="+encodeURIComponent(sql);

HRE.exe(mp,SelecertDataBinder_callback);

}

作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

package com.attilax.sql;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.util.ArrayList;

import java.util.List;

import java.util.Map;

import org.apache.commons.dbutils.QueryRunner;

import org.apache.commons.dbutils.handlers.MapListHandler;

import aaaCfg.ConnectionImp;

import aaaCfg.IocX;

import com.attilax.core;

import com.attilax.biz.seo.getConnEx;

import com.attilax.io.pathx;

import com.attilax.persistence.DBCfg;

import com.attilax.persistence.DbutilX;

import com.attilax.time.timeUtil;

import com.google.inject.Inject;

/**

* q317

* com.attilax.sql.SqlService

* @author Administrator

*

*/

public class SqlService {

public Object exe(String sql) {

if(sql.trim().toLowerCase().startsWith("update") || sql.trim().toLowerCase().startsWith("insert"))

{

return  execSql_retInt(sql);

}

return executeQuery(sql);

// TODO Auto-generated method stub

}

public SqlService(DBCfg cfg) {

this.dbcfg=cfg;

}

public SqlService(Connection conn) {

this.conn=conn;

}

public SqlService() {

System.out.println("-------db til  no para ini");

}

/**

@author attilax 老哇的爪子

@since   p1p g_r_w

*/

public static void main(String[] args) {

// String sql = " SELECT * FROM `mall_shop_info` sp left join  mall_user_info  ui on  sp.user_id=ui.user_id where sp.user_id=8 ";

////  sql= " update mall_shop_info set shop_intro='myintro5' where shop_id=8 ";

////  sql=sql+" ; update  mall_user_info set  user_mobile='1358891563'    where user_id=8 ";

//sql="SELECT * FROM  mall_user_info   where  user_id=6 ; SELECT * FROM  mall_user_info   where  user_id=8 ";

//

//  sql="select * from hx_car where name like '%豪车%'";

// DbutilX c= IocX.getBean(DbutilX.class);

//// System.out.println(c.update(sql));

//  List li=c.findBySql(sql);

//  ApiX2 hc=new ApiX2();

// hc.hbx=c;

//

String sql="select * from gv_material";

DbutilX dx= IocX.getBean(DbutilX.class);

List<Map> li=dx.findBySql(sql);

System.out.println(core.toJsonStrO88(li));

System.out.println("--f");

}

@Inject

Connection conn;

@Inject

DBCfg dbcfg;

String path = pathx.classPath() + "/website.properties";

public Connection getConnection() throws getConnEx {

if(this.conn instanceof ConnectionImp)

this.conn=null;

if(this.conn!=null)

return this.conn;

// com.microsoft.sqlserver.jdbc.SQLServerDriver

//System.out.println(PropX.getConfig(path, "jdbc.url"));

try {

Class.forName(dbcfg.getDriver());

} catch (ClassNotFoundException e) {

throw new RuntimeException("Class.forName driver err,drive class name is :  "+dbcfg.getDriver(),e);

}

//Connection conn;

//

//conn = DriverManager.getConnection(dbcfg.getUrl(), dbcfg.getUser(), dbcfg.getPassword());

//

//try {

//

//Class.forName("com.mysql.jdbc.Driver");

//} catch (ClassNotFoundException e) {

//throw new getConnEx("getconnex" + e.getMessage());

//}

Connection conn;

try {

conn = DriverManager.getConnection(

dbcfg.getUrl(),

dbcfg.getUser(),

dbcfg.getPassword());

System.out.println("get conn: "+ conn+" at:"+timeUtil.Now_CST());

} catch (SQLException e) {

throw new getConnEx("getconnex" + e.getMessage());

}

return conn;

}

public List<Map> execSql(String sql)

{

if(sql.trim().toLowerCase().startsWith("update") || sql.trim().toLowerCase().startsWith("insert"))

{

int intx = update(sql);

List li=new ArrayList ();

li.add(intx);

return li;

}

return findBySql(  sql);

}

public int executeUpdate(Connection conn, String string) {

PreparedStatement prepareStatement;

ResultSet resultSet;

try {

prepareStatement = conn.prepareStatement(string);

return prepareStatement.executeUpdate() ;

} catch (SQLException e) {

throw new RuntimeException(e);

}

}

public Map uniqueResult(String $sql) {

List li=findBySql($sql);

return (Map) li.get(0);

}

public List findBySql(String sql)  {

Connection conn;

try{

conn = getConnection();

// 创建一个QueryRunner

QueryRunner queryRunner = new QueryRunner(true);

List<Map<String, Object>> list;

list = queryRunner.query(conn,

sql,

new MapListHandler());

return list;

}

catch (Exception e) {

e.printStackTrace();

throw new RuntimeException(e);

}

}

public int executeUpdate(String sql) {

// TODO Auto-generated method stub

return  execSql_retInt(sql);

}

public List executeQuery(String sql)

{

// new RuntimeException(" no implt" );

return findBySql(  sql);

}

public Integer execSql_retInt(String sql)

{

// new RuntimeException(" no implt" );

return update(  sql);

}

public int update(String sql)  {

Connection conn;

try{

conn = getConnection();

// 创建一个QueryRunner

QueryRunner queryRunner = new QueryRunner(true);

int list;

list = queryRunner.update(conn, sql);

return list;

}

catch (Exception e) {

e.printStackTrace();

throw new RuntimeException(e);

}

}

}

最新文章

  1. Java入门第一章
  2. ZeroMQ接口函数之 :zmq_msg_size - 以字节为单位返回消息内容的大小
  3. ListView的基础入门
  4. springMVC-InitBinder
  5. BZOJ4439——[Swerc2015]Landscaping
  6. 解决maven的“Dynamic Web Module 3.0 requires Java 1.6 or newer.”错误
  7. OSX 升级 vim
  8. A - Oulipo
  9. chrome emulator use-agent 设置 chrom模拟手机客户端
  10. C#拓展练习之模拟键盘录入
  11. 利用 onload 事件监控跨站资源
  12. ThinkPHP - 图片水印
  13. 利用拷贝data目录文件的方式迁移mysql数据库
  14. Oracle-08:连接查询
  15. java学习笔记08-switch case语句
  16. js设置,获取cookie
  17. pyton 模块之 pysmb 文件上传(windows)
  18. Maya插件开发的几种方式归纳
  19. chrome扩展应用API
  20. JSONCPP to Visual Studio

热门文章

  1. C#常用的IO操作方法
  2. Latex学习笔记-序
  3. Asp.Net Core 通过中间件防止图片盗链
  4. 网络基础 : OSI参考模型
  5. ASP.NET Core中间件(Middleware)实现WCF SOAP服务端解析
  6. 初入网络系列笔记(4)HTTP请求和响应
  7. sql语句查询
  8. Redis常用五大数据类型
  9. 网站banner无缝轮播
  10. vue+ vue-router + webpack 踩坑之旅