- Sqli-labs靶场第11关详解[Sqli-labs-less-11]
「已注销」
sqli-labs数据库web安全网络安全mysqlsql
Sqli-labs-Less-11前言:SQL注入的三个条件:①参数可控;(从参数输入就知道参数可控)②参数过滤不彻底导致恶意代码被执行;(需要在测试过程中判断)③参数带入数据库执行。(从网页功能能大致分析出是否与数据库进行交互)利用orderby来测列数测显位:mysql用1,2,3,4Mysql获取相关数据:一、数据库版本-看是否认符合information_schema查询-version(
- sqli-labs less17 password-update语句
Yix1a
转自一位不知名大佬的笔记-----------------------------------less-17-----------------------------------原urlhttp://192.168.137.138/sqli-labs-master/Less-17/页面显示:[PASSWORDRESET](密码重置)说明这个页面很有可能是使用了update语句很多网页有修改密码的功
- Sqli-labs——lesson11
Shock397
Sqli-labs闯关安全
在11关是登录界面了我们可以先用bp抓包来看它的post请求来再在Hackbar里面的postdata里面对数据进行操作1、在对uname的admin加上'后回显错误,说明此处存在注入漏洞2、首先先在username中验证:用or1=1#即可验证此处确实存在注入漏洞同样在password位也能验证出来3、验证成功后我们开始构造sql语句进行注入1)判断列数:输入orderby3回显错误,2正确,说
- sqli-labs靶场安装
小红帽Like大灰狼
Kali网络安全sql靶场sql注入小皮搭建sqli-labs靶场
1、下载小皮官网下载:https://www.xp.cn/2、安装小皮不要安装在有中文的目录下3、打开靶场,解压靶场靶场地址(我网盘分享了)sqli-labs靶场提取码:jctl**4、配置网站**5、浏览器访问网站安装成功
- 《SQLi-Labs》05. Less 29~37
永别了,赛艾斯滴恩
lessandroid前端
title:《SQLi-Labs》05.Less29~37date:2024-01-1722:49:10updated:2024-02-1218:09:10categories:WriteUp:Security-Labexcerpt:HTTP参数污染,联合注入、宽字节注入。comments:falsetags:top_image:/images/backimg/SunsetClimbing.png
- 云服务器利用Docker搭建sqli-labs靶场环境
在云服务器上利用Docker搭建sqli-labs靶场环境可以通过以下步骤完成:安装Docker:首先,你需要在你的云服务器上安装Docker。具体命令如下:sudoapt-getupdatesudoapt-getinstalldocker-ce拉取sqli-labs镜像:接下来,你需要从DockerHub上拉取sqli-labs的镜像。可以使用以下命令完成:dockerpullaudi1/sql
- Sqli-Labs 通关笔记
神丶上单
数据库mysqlsql网络安全web
文章目录07-SQL注入1.搭建sqli靶场2.完成SQLi-LABSPage-1**Less-1GET-Errorbased-Singlequotes-String(基于错误的GET单引号字符型注入)**1.获取当前数据库2.获取所有库名3.获取表名4.获取表的所有字段5.获取users表所有字段内容**Less-2GET-Errorbased-Intigerbased(基于错误的GET整型注入
- sqli-labs环境安装及所遇到的坑
积极向上的三毛
我们采用的是Sqli-labs+phpstudy的方式。1.下载phpstudy并解压安装,下载地址:https://www.xp.cn/download.html?utm_source=so注意:本机由于一开始下的版本过高,导致不兼容。以下为2016版。从网上查询得知,因为sqli-labs是很多年前的了,php版本过高会导致无法解析。2.Sqli-labs项目地址—Github获取:https
- CTF--Web安全--SQL注入之Post-Union注入
给我杯冰美式
Web安全--SQL注入web安全sql安全
一、手动POST注入实现绕过账号密码检测我们利用sqli-labs/Less-11靶场来进行演示:我们可以看到一个登录页面打开Less-11的根目录,我们打开页面的源代码(PHP实现)。用VS-code打开文件,找到验证登录信息的代码行。此形式的代码存在POST注入漏洞。我们可以注入一句万能密码。admin'or1=1#单看这句代码可能不是很直观,我们将这句万能密码写到源代码中进行观察。@$sql
- CTF-Web安全--SQL注入之Union注入详解
给我杯冰美式
Web安全--SQL注入web安全sql安全
一、测试靶场与使用工具浏览器:火狐浏览器--Firefox靶场:sqli-labs使用插件:HackBar操作环境:phpstudy二、判断字符型注入与数字型注入操作步骤:1、用F12打开控制台,打开HackBar,LoarURL,将当前靶场的URL信息复制到操作台上2、输入?id=1,观察到页面发生变化,显示的是id=1时数据库中的信息,?是用来分割URL和查询字符串的,查询到了id=1时的用户
- Sqli-labs靶场1-5
777sea
网络安全技术学习sqlweb安全
流程判断注入点和注入类型判断字段个数判断显示位爆库爆表爆字段名爆内容配置注意事项使用sqli-labs本地靶场,配置本地靶场需要注意的问题:数据库配置文件db-creds.incphp版本由于该靶场比较古早,所以php的版本要选择更低一点的,比如5.3.29Less-1单引号注入1.判断注入点和注入类型单引号报错?id=-1'--+2.查字段个数?id=1'orderby4--+3.判断显示位?i
- CenOS6.5搭建sqli-labs-master靶场环境
Toert_T
sql注入安全信息安全sql网络安全mysqlphp
目录一、靶场搭建环境准备二、搭建过程0x1配置本地软件仓库0x2安装sqli-labs支持服务0x3部署sqli-labs靶场三、测试sqli-labs靶场环境一、靶场搭建环境准备sqli-labs-master是一套结合http+php+mysql环境的sql注入练习平台,里面有丰富的sql注入靶场环境虚拟机软件:VMware®Workstation16Pro虚拟机系统:Centos6.5虚拟网
- sqli-labs-master靶场搭建详细过程(附下载链接)
Sarahie
靶场网络安全
1、下载地址:小皮:Windows版phpstudy下载-小皮面板(phpstudy)(xp.cn)Sqli:mirrors/audi-1/sqli-labs·GitCode2、安装小皮3、把sqli压缩包放进去解压,找到$dbpass=''单引号里面填root具体路径如下4、打开小皮,启动apache、mysql,访问:http://127.0.0.1/sqli-labs-master/搭建完成
- SQL注入:sqli-labs靶场通关(1-37关)
未知百分百
安全数据库sql数据库通关网络安全安全web安全安全威胁分析
SQL注入系列文章:初识SQL注入-CSDN博客SQL注入:联合查询的三个绕过技巧-CSDN博客SQL注入:报错注入-CSDN博客SQL注入:盲注-CSDN博客SQL注入:二次注入-CSDN博客SQL注入:orderby注入-CSDN博客SQL注入:宽字节注入-CSDN博客目录第1关(联合查询)第2关(数字型)第3关('闭合)第4关(")闭合)第5关(报错注入)第6关("闭合)第7关(secure
- MAC下搭建PHP开发环境及sqli-labs安装
2mpossible
为了学习web,首先要搭建php开发环境,由于我用的是mac,所以首选用MAMP来搭建首先确保互联网共享状态是关闭的,在系统偏好设置的共享里面设置然后安装MAMP安装好了会有MAMP和MAMPPRO,打开MAMP,StartServers在localhost:8888就会有我们的服务点击Preferences,在Ports修改Apache和Mysql端口为80和3306然后我为了方便更改我的默认目
- sqli-labs第一关的闯关
修书成林
mysqlsqldatabase
第一关:单引号错误SQL的注入最终是为了拿到数据库的文件或者数据。刚进页面,显示需要输入id。于是我们使用在地址栏后面加上?id=1第二行的黄色字体是我自己添加的内容,表示被传入mysql执行的语句(方便我加深理解),绿色字体是正常显示的内容。如果你也想要显示此语句,可以在安装目录下的此页面的php当中,加入这条语句echo“$sql”判断有无注入点:老规矩:加上and1=1;and1=2,看一下
- sqli-labs第一关详解 纯新手向 含原理
On3_Thing
Less-01为方便初学者理解,更改了sqli-labs的源码,以显示sql语句后期学习中需要自己推理初始页面在url后面用get传值id=1,随后能看到网页出现变化如下图不断更改上传id的值,会有不同的用户信息显示。按递增顺序直到14为止,即(1~14)判断注入点是否存在且能否使用一般使用单引号进行判断,加到url后面出现报错内容大致为LIMIT0,1附近有语法错误。为什么要使用单引号进行判断实
- sqli-labs第一关
瓜子壳、
数据库
1.判断是否存在注入,注入是字符型还是数字型??id=1and1=1?id=1and1=2因为输入and1=1与and1=2回显正常,所以该地方不是数字型。?id=1'?id=1'--+输入单引号后报错,在单引号后添加--+恢复正常,说明存在字符注入2.猜解SQL查询语句中的字段数?id=1'orderby3--+?id=1'orderby4--+利用二分法尝试,得到列数为33.确定回显位置将id
- 安全小记-sqli-labs闯关
九字宸
安全
1.安装靶场介绍:SQLI,sqlinjection,我们称之为sql注入。何为sql,英文:StructuredQueryLanguage,叫做结构化查询语言。常见的结构化数据库有MySQL,MSSQL,Oracle以及Postgresql。Sql语言就是我们在管理数据库时用到的一种。在我们的应用系统使用sql语句进行管理应用数据库时,往往采用拼接的方式形成一条完整的数据库语言,而危险的是,在拼
- sqli-labs闯关随记
拓海AE
sqli-labs闯关sql数据库网络安全
前言:做了sqli-labs的接近三十关,在这里简单做个总结,以下是自己在闯关中所学到的知识,包括在网上查询、参考别人文章以及资料所理解到的。这个随记比较杂乱,都是我边学边写的,希望大家凑合着看哈。会不定时更新,如果后面内容较多,会考虑分为上下篇。1、sql注入分类基于从服务器接收到的响应:基于错误的sql注入联合查询的类型堆查询注射sql盲注:基于布尔sql盲注基于时间的sql盲注基于报错的sq
- sqli-labs闯关
鱼不知忆
安全
目录1.安装靶场2.了解几个sql常用知识2.1联合查询union用法2.2MySQL中的通配符:2.3常用函数2.4数据分组3.mysql中重要的数据库和表4.开始闯关4.1Less-14.1.1首先进行一次常规的注入4.1.2深入解析1.安装靶场1.首先推荐使用github下载靶场源码https://github.com/Audi-1/sqli-labs2.接着你需要phpstudy即小皮面板
- sqli-labs-master 下载、搭建
etc _ life
数据库
sqli-labs-mastersqli-labs-master是一个帮助用户学习和测试SQL注入漏洞的开源项目。它提供了一系列的环境,用户可以在这些环境中进行实验,学习如何检测、利用和防御SQL注入攻击。sqli-labs下载地址:github.com/Audi-1/sqli-labs搭建搭建sqli-labs借助PHPstudy来完成,我们将下载好的sqli-labs-master包解压至PH
- sqli-labs靶场第一关详解
赛sir
网络安全靶场sql靶场mysql
目录sqlilabs靶场第一关0.sql注入解释0.1什么是sql注入0.2sql注入的原理0.3sql注入方法0.3.1数字型注入0.3.2字符型注入1.注入第一步判断请求方式、类型1.1打开我自己本地的靶场http://sql.com/Less-1/(上一期靶场搭建:http://t.csdnimg.cn/mzLeq)1.2.进行手工测试判断有没有sql注入?1.3?id=11.4and1=1
- sqli-labs靶场(1-6关)
沧海一粟@星火燎原
sql数据库
1、第一关测试id=1id=1'加一个引号报错,两个引号正常,应该是字符,还有回显猜测字段长度id=1'orderby3--+id=1'orderby4--+字段长度为三,接下来确定位置:id=1'and1=2unionselect1,2,3--+查出库名,及版本号id=1'and1=2unionselect1,database(),version()--+接下来爆出所有表名id=1'and1=2
- sqli-labs靶场第七关
沧海一粟@星火燎原
数据库oracle
7、第七关id=1'--+单引号报错,id=1"--+双引号不报错,可以判断是单引号闭合id=1')--+也报错,尝试两个括号闭合,id=1'))--+不报错接下来用脚本爆库importstringimportrequestsnumbers=[1,2,3,4,5,6,7,8,9,0]letters2=list(string.ascii_lowercase)fuhao=['~',"@","$","^
- get基于报错的sql注入利用-读敏感文件和写入一句话木马
狗蛋的博客之旅
Web安全渗透sql数据库
环境准备:构建完善的安全渗透测试环境:推荐工具、资源和下载链接_渗透测试靶机下载-CSDN博客基础:GET基于报错的sql注入利用-脱库-CSDN博客1、selectintooutfile或dumpfile写入一句话马这里用Sqli-labs靶场的第一关做演示,之前演示过改关卡的闭合符是单引号,靶场地址:http://127.0.0.1/sqlilabs/less-1/?id=1判断MysQL的存
- WEB安全渗透测试-pikachu&DVWA&sqli-labs&upload-labs&xss-labs靶场搭建(超详细)
aozhan001
web安全xss安全网络安全
目录phpstudy下载安装一,pikachu靶场搭建1.下载pikachu2.新建一个名为pikachu的数据库3.pikachu数据库配置编辑4.创建网站编辑5.打开网站6.初始化安装二,DVWA靶场搭建1.下载DVWA2.创建一个名为dvwa的数据库3.DVWA数据库配置4.创建网站5.打开登入:http://localhost/dvwa/三,sqli-labs靶场搭建1.下载sqli-la
- sqli-labs 的安装
f1a94e9a1ea7
sqli-labs下载:https://github.com/Audi-1/sqli-labs解压后放入phpstudy的www目录下打开sqli-labs文件下sql-connections/db-creds.inc文件修改密码:$dbpass='root'phpstudy创建网站,域名为解压的文件名,php版本要在7以下创建好后打开网站,点击Setup/resetDatabaseforlabs
- Web安全漏洞专项靶场—SQL注入—docker环境—sqli-labs靶场—详细通关指南
Dr.Neos
Web安全漏洞专项靶场mysqlphp渗透测试docker数据库web安全网络安全
SQL注入—sqli-labs靶场零、前言一、环境搭建①、VirtualBox②、KaliLinux③、Docker二、闯关开始1、Less-1—'—union2、Less-2—数字型—union3、Less-3—')—union4、Less-4—")—union5、Less-5—'—布尔盲注6、Less-6—"—布尔盲注7、Less-7—'))7.1—布尔盲注7.2—文件写入8、Less-8—'
- CTF 三大测试靶场搭建:DVWA、SQLi-LABS、upload-labs 靶场部署教程(VM + CentOS 7 + Docker)
零号·镜瞳
渗透测试靶场搭建网络安全web安全linuxcentos系统安全
目录前言靶场介绍DVWASQLi-LABSupload-labs靶场搭建CentOS7虚拟环境准备靶场环境部署系统环境配置Docker环境配置下载Docker配置Docker镜像源启动docker靶场配置靶场镜像抓取创建并运行docker容器靶场的访问&靶场的初始化DVWA靶场重置SQLi-LABS靶场重置upload-labs靶场重置总结补充:docker靶场高级使用进入docker靶场dock
- java杨辉三角
3213213333332132
java基础
package com.algorithm;
/**
* @Description 杨辉三角
* @author FuJianyong
* 2015-1-22上午10:10:59
*/
public class YangHui {
public static void main(String[] args) {
//初始化二维数组长度
int[][] y
- 《大话重构》之大布局的辛酸历史
白糖_
重构
《大话重构》中提到“大布局你伤不起”,如果企图重构一个陈旧的大型系统是有非常大的风险,重构不是想象中那么简单。我目前所在公司正好对产品做了一次“大布局重构”,下面我就分享这个“大布局”项目经验给大家。
背景
公司专注于企业级管理产品软件,企业有大中小之分,在2000年初公司用JSP/Servlet开发了一套针对中
- 电驴链接在线视频播放源码
dubinwei
源码电驴播放器视频ed2k
本项目是个搜索电驴(ed2k)链接的应用,借助于磁力视频播放器(官网:
http://loveandroid.duapp.com/ 开放平台),可以实现在线播放视频,也可以用迅雷或者其他下载工具下载。
项目源码:
http://git.oschina.net/svo/Emule,动态更新。也可从附件中下载。
项目源码依赖于两个库项目,库项目一链接:
http://git.oschina.
- Javascript中函数的toString()方法
周凡杨
JavaScriptjstoStringfunctionobject
简述
The toString() method returns a string representing the source code of the function.
简译之,Javascript的toString()方法返回一个代表函数源代码的字符串。
句法
function.
- struts处理自定义异常
g21121
struts
很多时候我们会用到自定义异常来表示特定的错误情况,自定义异常比较简单,只要分清是运行时异常还是非运行时异常即可,运行时异常不需要捕获,继承自RuntimeException,是由容器自己抛出,例如空指针异常。
非运行时异常继承自Exception,在抛出后需要捕获,例如文件未找到异常。
此处我们用的是非运行时异常,首先定义一个异常LoginException:
/**
* 类描述:登录相
- Linux中find常见用法示例
510888780
linux
Linux中find常见用法示例
·find path -option [ -print ] [ -exec -ok command ] {} \;
find命令的参数;
- SpringMVC的各种参数绑定方式
Harry642
springMVC绑定表单
1. 基本数据类型(以int为例,其他类似):
Controller代码:
@RequestMapping("saysth.do")
public void test(int count) {
}
表单代码:
<form action="saysth.do" method="post&q
- Java 获取Oracle ROWID
aijuans
javaoracle
A ROWID is an identification tag unique for each row of an Oracle Database table. The ROWID can be thought of as a virtual column, containing the ID for each row.
The oracle.sql.ROWID class i
- java获取方法的参数名
antlove
javajdkparametermethodreflect
reflect.ClassInformationUtil.java
package reflect;
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;
import javassist.Modifier;
import javassist.bytecode.CodeAtt
- JAVA正则表达式匹配 查找 替换 提取操作
百合不是茶
java正则表达式替换提取查找
正则表达式的查找;主要是用到String类中的split();
String str;
str.split();方法中传入按照什么规则截取,返回一个String数组
常见的截取规则:
str.split("\\.")按照.来截取
str.
- Java中equals()与hashCode()方法详解
bijian1013
javasetequals()hashCode()
一.equals()方法详解
equals()方法在object类中定义如下:
public boolean equals(Object obj) {
return (this == obj);
}
很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、I
- 精通Oracle10编程SQL(4)使用SQL语句
bijian1013
oracle数据库plsql
--工资级别表
create table SALGRADE
(
GRADE NUMBER(10),
LOSAL NUMBER(10,2),
HISAL NUMBER(10,2)
)
insert into SALGRADE values(1,0,100);
insert into SALGRADE values(2,100,200);
inser
- 【Nginx二】Nginx作为静态文件HTTP服务器
bit1129
HTTP服务器
Nginx作为静态文件HTTP服务器
在本地系统中创建/data/www目录,存放html文件(包括index.html)
创建/data/images目录,存放imags图片
在主配置文件中添加http指令
http {
server {
listen 80;
server_name
- kafka获得最新partition offset
blackproof
kafkapartitionoffset最新
kafka获得partition下标,需要用到kafka的simpleconsumer
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.
- centos 7安装docker两种方式
ronin47
第一种是采用yum 方式
yum install -y docker
 
- java-60-在O(1)时间删除链表结点
bylijinnan
java
public class DeleteNode_O1_Time {
/**
* Q 60 在O(1)时间删除链表结点
* 给定链表的头指针和一个结点指针(!!),在O(1)时间删除该结点
*
* Assume the list is:
* head->...->nodeToDelete->mNode->nNode->..
- nginx利用proxy_cache来缓存文件
cfyme
cache
user zhangy users;
worker_processes 10;
error_log /var/vlogs/nginx_error.log crit;
pid /var/vlogs/nginx.pid;
#Specifies the value for ma
- [JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题
comsci
嵌入式
假如我们需要用JWFD的语法分析模块定义一个带负号的方程式,直接在方程式之前添加负号是不正确的,而必须这样做:
string str01 = "a=3.14;b=2.71;c=0;c-((a*a)+(b*b))"
定义一个0整数c,然后用这个整数c去
- 如何集成支付宝官方文档
dai_lm
android
官方文档下载地址
https://b.alipay.com/order/productDetail.htm?productId=2012120700377310&tabId=4#ps-tabinfo-hash
集成的必要条件
1. 需要有自己的Server接收支付宝的消息
2. 需要先制作app,然后提交支付宝审核,通过后才能集成
调试的时候估计会真的扣款,请注意
- 应该在什么时候使用Hadoop
datamachine
hadoop
原帖地址:http://blog.chinaunix.net/uid-301743-id-3925358.html
存档,某些观点与我不谋而合,过度技术化不可取,且hadoop并非万能。
--------------------------------------------万能的分割线--------------------------------
有人问我,“你在大数据和Hado
- 在GridView中对于有外键的字段使用关联模型进行搜索和排序
dcj3sjt126com
yii
在GridView中使用关联模型进行搜索和排序
首先我们有两个模型它们直接有关联:
class Author extends CActiveRecord {
...
}
class Post extends CActiveRecord {
...
function relations() {
return array(
'
- 使用NSString 的格式化大全
dcj3sjt126com
Objective-C
格式定义The format specifiers supported by the NSString formatting methods and CFString formatting functions follow the IEEE printf specification; the specifiers are summarized in Table 1. Note that you c
- 使用activeX插件对象object滚动有重影
蕃薯耀
activeX插件滚动有重影
使用activeX插件对象object滚动有重影 <object style="width:0;" id="abc" classid="CLSID:D3E3970F-2927-9680-BBB4-5D0889909DF6" codebase="activex/OAX339.CAB#
- SpringMVC4零配置
hanqunfeng
springmvc4
基于Servlet3.0规范和SpringMVC4注解式配置方式,实现零xml配置,弄了个小demo,供交流讨论。
项目说明如下:
1.db.sql是项目中用到的表,数据库使用的是oracle11g
2.该项目使用mvn进行管理,私服为自搭建nexus,项目只用到一个第三方 jar,就是oracle的驱动;
3.默认项目为零配置启动,如果需要更改启动方式,请
- 《开源框架那点事儿16》:缓存相关代码的演变
j2eetop
开源框架
问题引入
上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。
该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。
当然去看相关实现代代码的时候,大致是下面的样子。
[java]
view plain
copy
print
?
public vo
- AngularJS浅析
kvhur
JavaScript
概念
AngularJS is a structural framework for dynamic web apps.
了解更多详情请见原文链接:http://www.gbtags.com/gb/share/5726.htm
Directive
扩展html,给html添加声明语句,以便实现自己的需求。对于页面中html元素以ng为前缀的属性名称,ng是angular的命名空间
- 架构师之jdk的bug排查(一)---------------split的点号陷阱
nannan408
split
1.前言.
jdk1.6的lang包的split方法是有bug的,它不能有效识别A.b.c这种类型,导致截取长度始终是0.而对于其他字符,则无此问题.不知道官方有没有修复这个bug.
2.代码
String[] paths = "object.object2.prop11".split("'");
System.ou
- 如何对10亿数据量级的mongoDB作高效的全表扫描
quentinXXZ
mongodb
本文链接:
http://quentinXXZ.iteye.com/blog/2149440
一、正常情况下,不应该有这种需求
首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。
说一下,
- C语言算法之水仙花数
qiufeihu
c算法
/**
* 水仙花数
*/
#include <stdio.h>
#define N 10
int main()
{
int x,y,z;
for(x=1;x<=N;x++)
for(y=0;y<=N;y++)
for(z=0;z<=N;z++)
if(x*100+y*10+z == x*x*x
- JSP指令
wyzuomumu
jsp
jsp指令的一般语法格式: <%@ 指令名 属性 =”值 ” %>
常用的三种指令: page,include,taglib
page指令语法形式: <%@ page 属性 1=”值 1” 属性 2=”值 2”%>
include指令语法形式: <%@include file=”relative url”%> (jsp可以通过 include