PowerPoint 演示文稿

Similar documents
untitled

untitled

一 個 SQL Injection 實 例 的 啟 示 頁 2 / 6 因 此, 在 知 名 網 站 上 看 到 SQL Injection, 讓 人 驚 心, 卻 不 意 外 網 站 專 案 外 包 是 目 前 業 界 的 常 態, 而 在 價 格 取 勝 的 制 度 下, 低 價 得 標 的 S

威 福 髮 藝 店 桃 園 市 蘆 竹 區 中 山 里 福 祿 一 街 48 號 地 下 一 樓 50,000 獨 資 李 依 純 105/04/06 府 經 登 字 第 號 宏 品 餐 飲 桃 園 市 桃 園 區 信 光 里 民

untitled

「西醫基層總額支付委員會《第28次委員會議紀錄

Microsoft Word - 01.DOC

SB 綱 領 : (1) 消 防 服 務 管 制 人 員 : 就 年 度 需 要 特 別 留 意 的 事 項 中, 當 局 提 到 年 度 內, 消 防 處 會 啟 用 啟 德 新 建 並 設 有 救 護 設 施 的 消 防 局, 請 告 知 有 關

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

1.5招募说明书(草案)

回滚段探究

<4D F736F F F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

3 Driver do Microsoft Access (*.mdb) hisdata IFIX 1.4

第 一 节 认 识 自 我 的 意 义 一 个 人 只 有 认 识 自 我, 才 能 够 正 确 地 认 识 到 自 己 的 优 劣 势, 找 出 自 己 的 职 业 亮 点, 为 自 己 的 顺 利 求 职 推 波 助 澜 ; 一 个 人 只 有 认 识 自 我, 才 能 在 求 职 中 保 持

新・解きながら学ぶJava

x MapReduce A Italic URL Constant width Constant width bold Constant width italic 這個圖示代表提示或建議 這個圖示代表一般註解

6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM


KillTest 质量更高 服务更好 学习资料 半年免费更新服务

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

臺銀人壽「98年九至十一職等人員甄試」

javaexample-02.pdf

获取 Access Token access_token 是接口的全局唯一票据, 接入方调用各接口时都需使用 access_token 开发者需要进行妥善保存 access_token 的存储至少要保留 512 个字符空间 access_token 的有效期目前为 2 个小时, 需定时刷新, 重复

FileMaker 15 ODBC 和 JDBC 指南

Guava学习之Resources

停止混流接口 请注意 : 该功能需要联系 ZEGO 技术支持开通 1 接口调用说明 http 请求方式 : POST/FORM, 需使用 https 正式环境地址 access_token=access_token (http

基于ECO的UML模型驱动的数据库应用开发1.doc

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0,

Chapter 9: Objects and Classes

學 科 100% ( 為 單 複 選 題, 每 題 2.5 分, 共 100 分 ) 1. 請 參 閱 附 圖 作 答 : (A) 選 項 A (B) 選 項 B (C) 選 項 C (D) 選 項 D Ans:D 2. 下 列 對 於 資 料 庫 正 規 化 (Normalization) 的 敘

EJB-Programming-4-cn.doc

untitled

目 錄 1. 青 椒 炒 肉 絲 2 2. 茄 汁 燴 魚 片 3 3. 乾 煸 四 季 豆 4 4. 黑 胡 椒 豬 柳 5 5. 香 酥 花 枝 絲 6 6. 薑 絲 魚 片 湯 7 7. 醋 瓦 片 魚 8 8. 燜 燒 辣 味 茄 條 9 9. 炒 三 色 肉 丁 榨 菜 炒

FileMaker 16 ODBC 和 JDBC 指南


在 ongodb 中实现强事务

第一章 章标题-F2 上空24,下空24

2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF

Microsoft Office SharePoint Server MOSS Web SharePoint Web SharePoint 22 Web SharePoint Web Web SharePoint Web Web f Lists.asmx Web Web CAML f

季刊9web.indd

untitled

基于CDIO一体化理念的课程教学大纲设计

untitled

一、

标题

YOUWJ


3. 反 映 : 4. 五 花 八 门 : 5. 慷 慨 : 6. 参 与 : 7. 慰 劳 : 8. 延 续 : 9. 珍 爱 : 10. 浪 漫 : 三. 找 出 下 列 每 组 词 中 的 近 义 词 或 同 义 词 : 节 日 节 气 节 令 时 节 习 俗 民 俗 仪 式 风 俗 文 献

Microsoft Word - Learn Objective-C.doc

ChinaBI企业会员服务- BI企业

穨文件1

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

数 据 库 系 统 基 础 2/54 第 6 章 数 据 库 管 理 与 维 护

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入


XXXXXXXX

R D B M S O R D B M S R D B M S / O R D B M S R D B M S O R D B M S 4 O R D B M S R D B M 3. ORACLE Server O R A C L E U N I X Windows NT w w

untitled

掘 金 安 全 数 据 腾 讯 安 全 数 据 运 营 实 践 江 虎 (xti9er)

VB控件教程大全

Microsoft Word - 正文.doc

前言 C# C# C# C C# C# C# C# C# microservices C# More Effective C# More Effective C# C# C# C# Effective C# 50 C# C# 7 Effective vii

プリント

untitled

PowerPoint 演示文稿

新版 明解C++入門編

Junos Pulse Mobile Security R1 2012, Juniper Networks, Inc.

"+handlermethod.getbean().getclass().getname()); public void aftercompletion(httpservletrequest req, HttpServletResponse resp, Object handler, Excepti

目錄

目 录 1 镜 像 环 境 及 使 用 说 明 镜 像 环 境 说 明 镜 像 安 装 说 明 服 务 器 安 全 狗 网 站 安 全 狗 安 全 狗 服 云 MYSQL 数 据 库 密 码 软 件

untitled

IoC容器和Dependency Injection模式.doc

大 盘 尾 盘 大 跌, 大 幅 放 量, 满 仓 买 买 买, 博 乖 离 修 复 昨 天 所 讲 的 OLED 概 念 低 位 的 彩 虹 股 份 今 天 强 势 夹 板, 可 惜 被 大 盘 下 跌 导 致 烂 板, 不 过 封 板 主 力 还 是 很 给 力 胜 宏 科 技 三 板, 填 权

( 总 第 1073 期 ) 浙 江 省 人 民 政 府 主 办 2015 年 3 月 17 日 出 版 省 政 府 令 省 政 府 文 件 目 录 浙 江 省 大 型 群 众 性 活 动 安 全 管 理 办 法 ( 浙 江 省 人 民 政 府 令 第 333 号 ) (3) 浙 江 省 人 民 政

Microsoft Word - ch04三校.doc

主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F

概述

1.5招募说明书(草案)

四川省普通高等学校

一步一步教你搞网站同步镜像!|动易Cms

JAVA String常用APi

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc

1.JasperReport ireport JasperReport ireport JDK JDK JDK JDK ant ant...6

未命名

3.1 num = 3 ch = 'C' 2

untitled

9, : Java 19., [4 ]. 3 Apla2Java Apla PAR,Apla2Java Apla Java.,Apla,,, 1. 1 Apla Apla A[J ] Get elem (set A) A J A B Intersection(set A,set B) A B A B

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

幻灯片 1

untitled

ASP.NET MVC Visual Studio MVC MVC 範例 1-1 建立第一個 MVC 專案 Visual Studio MVC step 01 Visual Studio Web ASP.NET Web (.NET Framework) step 02 C:\M

untitled

Oracle高级复制配置手册_业务广告_.doc

untitled

UFO-用友电子表软件

untitled

Microsoft PowerPoint - ch6 [相容模式]

《大话设计模式》第一章

Transcription:

友乾营 报表的 SQL 植入风险 规避风险 : 让你的报表变的安全起来

SQL 植入的概念 恶意的 SQL 归根结底 : 执行了不该允许执行的 SQL 命令, 达到非法的目的 常见案例 骗过登录验证非法获取账号信息篡改 删除数据

为什么存在 SQL 植入

植入原理 如何攻击 特殊的输入参数 未处理特殊字符 -- # 数据库配置不合理

植入原理 : 案例 1, 特殊输入参数 union or 猜表名 : union all select 条件恒真 * from t_user

植入原理 : 案例 1, 特殊输入参数 or: 骗过登录 userid : 1 OR 1=1; password : '1' OR 1=1; SELECT * FROM users WHERE userid=1 OR 1=1 and pw =' 1' OR 1=1;

植入原理 : 案例 2, 特殊符号 -- # 一般数据库注释均采用 -- mysql 注释

植入原理 : 案例 2, 特殊符号 骗过登录 userid : '' or 1=1 -- ; userid : '' or 1=1 # ;

植入原理 : 案例 3, 数据库配置不合理 篡改 删除 拼 update ; update Users set pwd='1' 拼 delete drop ; delete from users ;drop from users

报表和 SQL 植入有啥关系 报表参数

报表和 SQL 植入有啥关系 : 普通用法 普通用法 :select * from t where date>=? and date<=? 一般写死的相对安全

报表和 SQL 植入有啥关系 : 通用查询 SQL1: mac1: SQL2:

报表和 SQL 植入有啥关系 : 通用查询 SQL1: mac1: SQL1:

报表和 SQL 植入有啥关系 : 通用查询 SQL1: mac1: rr

报表和 SQL 植入有啥关系 : 通用查询 SQL1: mac1: rr

报表工具提供防 SQL 植入的方法 xml 配置选项 自定义

报表防植入 : 报表工具 xml 配置 raqsoftconfig.xml

报表防植入 : 报表工具 xml 配置

报表防植入 : 报表工具 xml 配置 Url: 错误提示 :

报表防植入 : 报表工具自定义参数检查类接口 1 对所有参数值检查 2 针对某些参数进行检查 3 自定义检查后返回的错误提示信息 public class ResistSQLInject implements IParamChecker { // 校验不通过返回 false, 提供 paramname 以便用户只检查某种形式的参数 // 检验不通过是可获取详细信息

自定义类的具体实现方法

程序方式 :1 实现接口类 ( 所有参数检查 ) public class ResistSQLInject implements IParamChecker { private String cause = ""; private List<String> wordlist = new ArrayList<String>(); public boolean check(string paramname, String inputvalue) { if(inputvalue == null inputvalue.length() == 0){// 如果参数值为空, 则无需检查 return true; if(wordlist == null){ // 如果检测关键字列表是空, 则不作检查 return true; for(int i = 0; i < wordlist.size(); i++){ inputvalue = inputvalue.tolowercase();// 这里做, 是为了不区分大小写 if(inputvalue.indexof(wordlist.get(i).tolowercase()) >= 0){ StringBuffer sb = new StringBuffer(); sb.append(" 校验未通过,").append(paramName).append(" 参数中含有以下词汇 :").append(wordlist.get(i)).append("\n 位置 :").append(inputvalue.indexof(wordlist.get(i).tolowercase())); this.cause = sb.tostring(); return false; return true; public String getcause() { String tmp = this.cause; this.cause = ""; return tmp;

程序方式 :1 实现接口类 ( 特定参数检查 ) private String cause = ""; private List<String> wordlist = new ArrayList<String>(); /* * @paramname 验证的参数名 * @inputvalue 验证的参数值 */ public boolean check(string paramname, String inputvalue) { //wordlist.add("select"); if(wordlist == null){ // 如果检测关键字列表是空, 则不作检查 return true; if(paramname=="userid"){ if(inputvalue == null inputvalue.length() == 0){// 如果参数值为空, 则无需检查 return true; for(int i = 0; i < wordlist.size(); i++){ inputvalue = inputvalue.tolowercase();// 这里做, 是为了不区分大小写 if(inputvalue.indexof(wordlist.get(i).tolowercase()) >= 0){ StringBuffer sb = new StringBuffer(); sb.append(" 校验未通过,").append(paramName).append(" 参数中含有以下词汇 :").append(wordlist.get(i)).append("\n 位置 :").append(inputvalue.indexof(wordlist.get(i).tolowercase())); this.cause = sb.tostring(); return false; return true;

程序方式 :1 实现接口类 ( 自定义错误信息 ) public boolean check(string paramname, String inputvalue) { //wordlist.add("select"); if(wordlist == null){ // 如果检测关键字列表是空, 则不作检查 return true; if(inputvalue == null inputvalue.length() == 0){// 如果参数值为空, 则无需检查 return true; for(int i = 0; i < wordlist.size(); i++){ inputvalue = inputvalue.tolowercase();// 这里做, 是为了不区分大小写 if(inputvalue.indexof(wordlist.get(i).tolowercase()) >= 0){ StringBuffer sb = new StringBuffer(); sb.append(" 参数 :").append(paramname).append(" 检查未通过,").append(" 含有以下敏感词汇 : ").append(wordlist.get(i)).append(" \n 谨记 :\n").append(" 道路千万条 \n 规范第一条 \n 数据不规范 \n 亲人两行泪 "); this.cause = sb.tostring(); return false; return true;

程序方式 :2 Xml 内配置自定义类路径 xml(raqsoftconfig.xml): paramcheckclass 设置参数值校验的类路径 <property name="paramcheckclass" value="com.raqsoft.hyl.resistsqlinject " />

报表防植入 : 报表工具自定义参数检查类接口 Url: 错误提示 :

润乾线上直销系统 玩转好多乾 ( 省钱攻略 ) http://www.raqsoft.com.cn/wx/hdq-strategy-save.html 玩转好多乾 ( 赚钱攻略 ) http://www.raqsoft.com.cn/wx/hdq-strategy.html