理解xss shell是甚么之前,让我们一路回顾一下一些根基的xss(跨站脚本),xss是最多见的一个缝隙,存在于今天良多的web利用法度。xss是报复打击者试图经由过程web利用法度履行歹意脚本的手艺,报复打击者经由过程冲破同源策略的web利用法度。
报复打击者一旦可以或许找到一个存在xss缝隙的web利用法度,他可以操纵这个缝隙只想不合类型的报复打击此中一些是:
· 盗取根据(Stealing Credentials)
· 盗取会话令牌(Stealing Session tokens)
· 粉碎网站(Defacing the Website)
· 造成DOS报复打击(Causing DOS)
· 安装键盘记实器等更多(Installing Key loggers and many more)
跨站脚本存在三种不合的类型:
反射型XSS
存储型XSS
基于DOM的XSS
反射型xss:
这类缝隙存在于动态网页的web利用法度中,凡是这些利用法度将动静转换为一个参数并返回给用户。
例如:
URL: http://www.samplesite.com/error.html?value=learn+hacking
这申明在利用法度的动静中响应“learn+hacking”。 这意味着利用法度从URL中提守信息,对其进行措置,并显示给用户。 所以该URL措置用户供给的数据,并将其插进到办事器的响应。 假定没有进行恰当的过滤,那么利用法度很等闲遭到反射型XSS报复打击。
URL可以设置为:
http://www.samplesite.com/error.html?value=
当你点击上面的网址,它会弹出一个警告框。
存储型xss:
这类类型的缝隙存在于接管来自用户的输进并将其存储在该利用法度的办事器中,然后显示给其他用户。
例如:
一个 Facebook 的利用法度,它承诺对任何图片或地位颁发评论更新,然后显示给所有其他用户。假定利用法度不会过滤输进内容,然后,报复打击者可以评论处编写一个歹意脚本,以便拜候特定页面的用户将受影响。
所以存储型 XSS 包含两件事要做。第一,报复打击者将歹意脚本输进到利用法度。第二,在用户拜候精心计表情关的页面,脚本在后端让用户不知情的环境下履行。
基于DOM的XSS:
DOM暗示文档对象模型。这是完全不合于其他两个前面描述的报复打击。在基于DOM的xss,当用户点击机关的URL时,办事器响应不包含报复打击者的脚本。相反的是,浏览器在措置响应时履行歹意脚本。
这是因为浏览器的文档对象模型有能力来肯定用于加载当前页面的URL。利用法度发出的脚本可能会从URL中提取数据并进行措置。然后上传动态页面的内容,按照履行的脚本经由过程URL。
XSS Shell 是甚么?
XSS shell 是一个强大年夜的ASP.NET 开辟的东西,作为报复打击者与受害者之间的后门 。XSS Shell可以作为一个强大年夜的后门和长途治理软件。
报复打击过程:
XSS Shell办事器设置。
建设XSS Tunnel利用XSS Shell办事器。
插进歹意脚本到一个脆弱的网站。
开启XSS Tunnel,等候的受害者。
建设浏览器或东西利用XSS Tunnel。
当受害者拜候脆弱的页面,开端利用XSS Tunnel。
XSS Shell的工作道理:
图(A)
如图中所示,最初报复打击者成立与 XSS Shell 的连接,并且歹意脚本插进存在存储型或反射型XSS 的web 利用法度。一旦受害者拜候存在歹意脚本的页面,要求将被发送到 XSS Shell 办事器。按照要求,办事器成立一个通道与受害人进行交互。
图(B)
一旦受害者与XSS Shell办事器之间成立了一个通道,报复打击者可以经由过程XSS Shell节制通信接口。XSS Shell界面只是一个 GUI 环境,向报复打击者供给了一套完美的号令来履行某些把持。
在履行一个号令,需要的函数或脚本将在 XSS Shell 办事器调用,并将它发送给受害者。该脚本将被履行在受害者的浏览器,它会向 XSS Shell 办事器发送响应的成果。XSS Shell 办事器将成果存储在"MS-Access"数据库凡是由它用来存储数据。每当报复打击者需要的时辰,可以从数据库中提取成果。
XSS接口供给的一些号令是:
Get Cookie(获得Cookie)
Get Current Page(获得当前页面)
Get Clipboard (获得剪切板数据)
Get Key-logger data(获得键盘记实器数据)
Crash browser (浏览器解体 )
利用XSS Shell的一个长处是:它是开放源代码的,很等闲实现新的号令。
安装要求:
IIS办事器,你可以在主机上利用.asp文件。
Microsoft Access(. mdb)
一个等闲遭到XSS报复打击的网站。
一个脆弱的网站进行报复打击。
设置环境:
·下载的XSSShell: http://labs.portcullis.co.uk/download/xssshell-xsstunnell.zip
·建设IIS托管网站。
·安装
·建设XSS Shell。
IIS建设:
在 Windows 7 中建设 IIS 或以上时,遵循下面给出的步调:
1.点击“开端菜单”,进进“节制面板”。
2.点击“法度”,然后单击“打开或封锁windows功能”。
3.呈现一个新的"Windows 功能"对话框。展开"Internet 信息办事",选择默许的特点,必需安装IIS。
4.假定需要,你还可以展开其他类别安装任何附加的功能。
5.假定你想利用IIS用于评估审计目标,建议安装附加功能。
此刻已建设好IIS的机械了,可利用 http://localhost/拜候
图(C)
图C显示了IIS 7默许页面。
安装XSS Shell:
XSS Shell利用ASP.NET和MS-Access数据库。是以,只要确保你已你的机械安装了他们两个。
建设XSS Shell治理界面:
下载XSSShell.zip文件后,解压文件,你可以看到两个文件夹。 别离是“XSSshell”和“XSSTunnel”
XSSshell治理界面,你需要把它建设在你的机械。复制“XSSshell”文件夹到您的Web办事器。
图(D)
图D显示了“XSSshell”文件夹的布局。
如图上图中的子文件夹,你可以看到一个名为“db”的XSSShell子文件夹。 复制到一个安然的处所,因为XSSshell将在db数据库中存储完全的数据,不管它是受害者的会话cookie或任何其他属于受害者的数据
移动“DB”文件夹到一个安然的处所后,在"XSSshell/admin"文件夹下的"db.asp"文件中建设路径。,如许,该接口可以理解 db 在哪里和与它进行交互。
图(E)
图 E 显示的存储路径为 XSSshell 的数据库的位置。
图(F)
图F显示了拜候“shell.mdb”文件的默许暗码。 你可以编纂任何你想要的暗码。
此刻,您可利用localhost ur拜候治理界面(或你的域名)。
例: http://localhost/xssshell (或) http://yourhostname.com/xssshell
默许环境下它利用端口 80,但在建设域时假定更改端标语,您需要拜候该网站更改后的端标语。
建设XSS Shell:
从"XSSshell"文件夹中打开"xssshell.asp"。
建设办事器的路径。即XSSshell 文件夹地点的处所。
图(G)
图 G显示在 xssshell.asp 文件中建设的办事器路径。他编纂的处地点你的机械中的"XSSshell"文件夹中的"SERVER"参数。
此刻,从浏览器拜候您的治理界面。
图(H)
图H显示XSSshell的治理界面。
上面的图中可以看到三个部门。
号令:
正如前面提到的 XSSshell 有预定义的号令,从而使报复打击者等闲对受害者履行任何报复打击。该部门号令包含由 shell 撑持的所有号令。因为它是开源的你可以编纂它并添加您本身的功能那边。
受害者
受害者部门显示了受害者的名单。
日记:
日记显示了在受害者上履行的把持列表。
XSS Tunnel:
XSS Tunnel 就像一个代办署理东西,并经由过程XSSshell办事器上的XSS通道捕获流量。
图(I)
图I显示XSS Tunnel的建设设置。
如前所述,XSS Tunnel就像一个代办署理来捕获流量,经由过程XSS Tunnel打开XSSshell办事器。 为了做到这一点,XSS Tunnel应当可以或许知道XSSshell办事器正在运行。
我们可以从“Options”选项卡建设XSSshell的XSS Tunnel信息。
输进办事器地址和暗码。然后只需确保其工作正常,点击“Test Server”。假定建设无误,你会获得一个成功的动静。
图(J)
图J显示成功成立的连接。
完成建设后,单击“Start XSS Tunnel”的窗口。 然后你便可以看到所有履行XSS Tunnel的受害者。
图(K)
图K显示所有受害者的拜候页面和履行把持。