中国网络渗透测试联盟

标题: Ewebeditor漏洞2 [打印本页]

作者: admin    时间: 2012-9-13 17:00
标题: Ewebeditor漏洞2
eWebEditor.asp?id=45&style=standard1 样式调用* w: L, e+ t9 q& n) h0 Q- @

& ?/ m; E7 s0 w' d
8 C% Q/ c6 V: {/edit/admin_uploadfile.asp?id=14&dir=../../..
# y3 r, C5 T; I) X: G% v可以浏览网站目录  ../自己加或者减) F) ?2 l; G- H5 W1 I

! v* S3 E  Q  g0 p" r有次无意的入侵使我发现了ewebeditor2.7.0版本的存在注入漏洞0 F" }" _% M2 s0 U- o1 \1 L
简单利用就是
5 y& h% I) @- x$ S: qhttp://site/path/ewebeditor/ewebeditor.asp?id=article_content&style=full_v200/ o4 Z- `$ l- v% }
http://www.siqinci.com/ewebedito ... amp;style=full_v200- n1 {! B0 y$ Q9 \2 G$ H/ B+ c1 f$ p. I
可以利用nbsi进行猜解,对此进行注入
! o2 c" m/ u% a: Z. w还有的时候管理员不让复制样式,但是你又看到有个样式被别人以前入侵修改了存在asa或者之类可以传shell,但是上传插入工具没有,又无法修改怎么办那?也许很多人说应该可以加工具栏,但是我就遇见过不让加的& `1 K: j/ e8 `; R8 b0 {2 f
这样我们可以利用ewebeditor里的upload.asp文件进行本地构造进行上传具体如下:- f* M4 G) }/ F! W2 P
在action下面
+ X# y/ L; P9 y<form action="http://*********/edit/upload.asp?action=save&type=ASA&style=test" method=post name=myform enctype="multipart/form-data">5 w4 o- I3 F5 j- z! o. f( }
<input type=file name=uploadfile size=1 style="width:100%" onchange="originalfile.value=this.value">
3 V6 e: C4 T' z, Z! r<input type="submit" name="uploadfile" value="提交">
, G# k% r& Z2 k' W8 M7 Y# ]( Z% V<input type=hidden name=originalfile value="">
" z/ b4 w! ^- ^% H" R</form>3 a  g, T1 F1 j' _1 y
------------------------------------------------------------------------------------------------------------------------------------------------
+ j3 e1 p: s" [$ U<input type="submit" name="uploadfile" value="提交">    放在action后头
* ]5 x! P/ }, g: B/ Q5 q' {,适合用于在ewebeditor后台那个预览那里出来的 比如上传图片那里,有些时候上传页面弹不出来,就可以用upload.asp?action=save&type=ASA&style=test 这个本地来提交,不过这个东西还是要数据库里上传类型有ASA才可以传得上。
/ f# |6 S- Z. w# L6 ]$ S
8 j2 L" r! M1 g$ \# t4 l8 q3 b& H& L/ c+ Y1 @% _% r! L5 s
  ~+ \; n3 H$ I( |

- b' e( h! D* S' sEwebeditor最新漏洞及漏洞大全[收集] (图)/ n. C/ n& Q% A3 ]. _3 N& r7 Y- \
本帖最后由 administrator 于 2009-7-7 21:24 编辑
" i! ~, ?- D" X5 N' ^+ l4 D4 T3 r1 L3 I6 ?+ z! \9 q7 Z, H3 p
以下文章收集转载于网络: {' Y1 e4 n* n5 M" O
#主题描述# ewebeditor 3.8漏洞[php]
; w! Q4 k" s6 }  F* E: S--------------------------------------------------------------------------------------------
' \5 {" z! g9 m8 _1 `1 J#内容#* ?3 q3 B# f- p3 y3 H
php版ewebeditor 3.8的漏洞/ s1 w1 d- D6 R" X* F
php版本后台是调用../ewebeditor/admin/config.php,大家去看下源码就知道,在这里我说说利用方法:6 q  l( N8 b9 R2 |
1 首先当然要找到登陆后台,默认是../eWebEditor/admin/login.php,进入后台后随便输入一个用户和密码,当然会提示出错了,必须是出错的时候,然后这时候你清空浏览器的url,然后输入 javascript:alert(document.cookie=”adminuser=”+escape(”admin”)); javascript:alert(document.cookie=”adminpass=”+escape(”admin”)); javascript:alert(document.cookie=”admindj=”+escape(”1″));后三次回车,
7 L8 ]( m0 J4 p1 {; \3 b2 ?) G2 然后输入正常情况才能访问的文件../ewebeditor/admin/default.php就可以进后台了
( I/ j6 i2 @& @2 w) z4 O0 G3 后面的利用和asp一样,新增样式修改上传,就ok了/ J) V+ \- L- t6 r8 a
测试一下asp 2.8版本的,竟然一样可以用,爽,看来asp版的应该可以通杀(只测试2.8的,貌似2.8是最高版本的)2 a: V2 U' `" ]) Y+ b9 i+ G
aspx的版本../ewebeditor/admin/upload.aspx添好本地的cer的Shell文件,在浏揽器输入javascript:lbtnUpload.click();就能得到shell
1 v5 p5 n2 c  \4 hjsp的上传漏洞以及那个出了N久了,由于没有上传按钮,选择好要上传的shell,直接回车就可以了
1 i% z- A1 l6 ?, O( {2 i9 w/ w  `--------------------------------------------------------------------------------------------
. f0 g1 F/ Z3 P- d* O' Y' o4 O% O( T) Y. r7 ]
! d* w; C! k. j% V
算是比较全面的ewebeditor编辑器的漏洞收集,现在的网站大多数用的都是ewebeditor编辑器,所以ewebeditor漏洞的危害性还是相当大的,做了一下漏洞收集,漏洞修补的方法可去网上查找。
/ M* t) T8 D' X' [, I  ]+ M; T. j: }1 r6 n9 O' H. C
漏洞更新日期TM: 2009 2 9日 转自zake’S Blog
) [: M; W6 K* }8 R        ewebeditor最新漏洞。这个程序爆漏洞一般都是直接上传的漏洞,首先在本地搭建一个ASP环境重命名一个木马名字例如:1.gif.asp这样的就OK了, W6 O# W. ^0 k/ ]
那么接下来完美本地搭建一个环境你可以用WEB小工具搭建一个,目的就是让远程上传。/pic/3/a2009-6-4-7341a1.gif.asp搭建好了 ,在官方的地方执行网络地址
; Y4 O- W) Z" Z* ?; V; {1 j6 q6 r2 A+ k' J. c- x

3 I) C  o0 e. {然后确定以后,这里是最关键的一部!
) a' c& B' K. \3 e" `9 k9 a这里点了远程上传以后,再提交得到木马地址/ R0 K, O  K* b/ H' ~
由于官方在图片目录做了限制 导致不能执行ASP脚本而没能拿到WEB权限
! Z: z8 a  j8 p* A3 w- j属于安全检测漏洞版本ewebeditor v6.0.0& T# q7 f0 N) u

. |, m% a2 C+ M) g4 j  N- B以前的ewebeditor漏洞:
5 s* h! j$ C$ H. V: v6 T) w2 B' u
* x6 G# {1 R" O! J6 h% I$ r6 u1 tewebeditor注入漏洞
$ z, m0 {' h, a7 f2 ]" w/ w! f
& m( o+ `/ z" a# |; |2 s大家都知道ewebeditor编辑器默认的数据库路径db/ewebeditor.mdb
- |1 d0 g! D: L3 U. o默认后台地址是admin_login.asp,另外存在遍历目录漏洞,如果是asp后缀的数据库还可以写入一句话- h$ T- W4 ]/ `; O& U
今天我给大家带来的也是ewebeditor编辑器的入侵方法9 p, R- B$ a! X1 E  D
不过一种是注入,一种是利用upload.asp文件,本地构造/ ?% }5 J6 Z9 B5 a
NO1:注入' D" g# E, W7 v1 m. L
http://www.XXX.com/ewebeditor200 ... amp;style=full_v200
* m. E7 E5 ?! m9 n6 D1 B- x) d" n编辑器ewebedior7以前版本通通存在注入
: r6 e. y* p9 g3 l6 o: @5 d# I9 Z直接检测不行的,要写入特征字符
8 l7 y& U" t4 q" o! @- e* H1 K! Y8 X) t我们的工具是不知道ewebeditor的表名的还有列名
! z# ]( m4 E1 m我们自己去看看, o9 H! E* I8 W9 f" S
哎。。先表吧
" {% e: V, {1 g  H8 N) O要先添加进库
- L3 r: E/ y3 X& F5 Y" T开始猜账号密码了
2 Q  ^" \8 f8 a' E2 `+ Y/ \& W; a3 v0 v我们==8 w8 |4 D- b- S, v/ @+ d( K
心急的往后拉8 q  K) t4 F- ]& \2 n% c
出来了
" W# S3 l. S$ Q. _[sys_username]:bfb18022a99849f5 chaoup[sys_userpass]:0ed08394302f7d5d 851120
* I7 ~+ r) L( g9 T) |对吧^_^! t0 d$ p' G) M1 ~6 n' |* n* [
后面不说了
4 c8 j, s8 N' E+ Y! v- F2 `5 `9 RNO2:利用upload.asp文件,本地构造上传shell
. N* n, g" H9 s9 l$ W大家看这里6 \$ f% s* M: \* n& Q2 b( j$ X
http://www.siqinci.com/ewebedito ... lepreview&id=376 j' L: ^1 V7 t
如果遇见这样的情况又无法添加工具栏是不是很郁闷
- P. D' w0 m: a; H  f3 b现在不郁闷了,^_^源源不一般+ M& U4 S- ?) Q  p
我们记录下他的样式名“aaa”1 L  B7 R* N' I  c4 o' g  L
我已经吧upload.asp文件拿出来了) L: f+ H8 t% V- l
我们构造下* F: Y! X( A, q0 q( Q/ T9 J- S5 U! b
OK,我之前已经构造好了$ i" U  y  U8 x0 Z5 Z) ]
其实就是这里7 I) u; }+ W' Y  X4 X2 K6 u
<form action=”地址/path/upload.asp?action=save&type=&style=样式名” method=post name=myform enctype=”multipart/form-data”>% c- i( i$ V* d' M5 \0 F, @
<input type=file name=uploadfile size=1 style=”width:100%”>
7 c. t) y1 T6 o* [<input type=submit value=”上传了”></input>4 \* X0 e% l6 u3 @! o( n
</form>% [+ l& I. o$ i* N7 k
下面我们运行他上传个大马算了1 \/ ~5 c# h& \+ g; u
UploadFile上传进去的在这个目录下/ t9 S" K& W/ b9 j
2008102018020762.asa
+ Q! u  d2 [0 w3 J$ c+ ^/ B1 O+ }8 R) U" @1 z! R6 @. V
过往漏洞:& ?  u7 S% [# N" ]/ ]
5 O/ a- c7 p2 r/ j7 p  D% o
首先介绍编辑器的一些默认特征:  L, r% i8 C0 E- I1 p* Q
默认登陆admin_login.asp- m) t  N3 ?% @4 g8 {$ G  n
默认数据库db/ewebeditor.mdb
9 P) w6 ^) t/ S7 h$ U默认帐号admin 密码admin或admin888
+ S) d  [2 L0 E1 j6 ^+ t. _/ g搜索关键字:”inurl:ewebeditor” 关键字十分重要9 A' T, Q' E* v3 L
有人搜索”eWebEditor - eWebSoft在线编辑器”
) _9 ?( S7 r0 w3 M( }+ n0 l% ]% C3 Y根本搜索不到几个~' Q* o4 L* c8 L8 G5 L9 l' A  M8 ~
baidu.google搜索inurl:ewebeditor' j! J' l7 P" I  I0 n9 W0 g
几万的站起码有几千个是具有默认特征的~; X) H( o$ O9 \
那么试一下默认后台
1 M% M  q" m( n( Z# R5 I, Khttp://www.xxx.com.cn/admin/ewebeditor/admin_login.asp6 a4 A- i% c: K
试默认帐号密码登陆。
# J! w. [7 h5 F利用eWebEditor获得WebShell的步骤大致如下:  c7 F; I8 ~' v# Z/ s9 c
1.确定网站使用了eWebEditor。一般来说,我们只要注意发表帖子(文章)的页面是否有类似做了记号的图标,就可以大致做出判断了。
( f0 s; S& Q7 x7 k+ P2.查看源代码,找到eWebEditor的路径。点击“查看源代码”,看看源码中是否存在类似“<iframe ID=’eWebEditor1′ src=’/edit/ewebeditor.asp?id=content&style=web’ frameborder=0 scrolling=no width=’550′ HEIGHT=’350′></iframe>”的语句。其实只有发现了存在这样的语句了,才可以真正确定这个网站使用了 eWebEditor。然后记下src=’***’中的“***”,这就是eWebEditor路径。" Y9 @- K2 k8 c# Z% h- |2 u
3.访问eWebEditor的管理登录页面。eWebEditor的默认管理页面为admin_login.asp,和ewebeditor.asp在同一目录下。以上面的路径为例,我们访问的地址为:http://www.***.net/edit/admin_login.asp,看看是否出现了登录页面。' |+ y0 l& |: v! t+ a
如果没有看到这样的页面,说明管理员已经删除了管理登录页面,呵呵,还等什么,走人啊,换个地方试试。不过一般来说,我很少看到有哪个管理员删了这个页面,试试默认的用户名:admin,密码:admin888。怎么样?成功了吧(不是默认账户请看后文)!8 V! ?; n& t7 j0 b! s
4.增加上传文件类型。点击“样式管理”,随便选择列表中底下的某一个样式的“设置,为什么要选择列表中底下的样式?因为eWebEditor自带的样式是不允许修改的,当然你也可以拷贝一个新的样式来设置。- Y; ]4 O3 ]: y: y- [
然后在上传的文件类型中增加“asa”类型。( _9 q8 ]2 D4 d0 r+ I' a0 n4 S
5.上传ASP木马,获得WebShell。接下来将ASP木马的扩展名修改为asa,就可以简单上传你的ASP木马了。不要问我怎么上传啊,看到 “预览” 了吗?点击“预览”,然后选择“插入其它文件”的按钮就可以了。
' T% @' y" E1 {% N5 F5 s/ r% d漏洞原理) }# _, G5 `; i% ^) g
漏洞的利用原理很简单,请看Upload.asp文件:
3 x! o2 {  W2 l( u& r: J任何情况下都不允许上传asp脚本文件
3 P# H& q! ^4 O0 tsAllowExt = Replace(UCase(sAllowExt), “ASP”, “”)
: S* |/ D8 s0 Z5 k/ i因为eWebEditor仅仅过滤了ASP文件。记得我第一次使用eWebEditor时就在纳闷:既然作者已经知道asp文件需要过滤,为什么不同时过滤asa、cer等文件呢?也许这就是对免费用户不负责任的表现吧!
& }3 G5 O" T3 C+ Y8 M8 }6 b高级应用
! l- c" A! p' EeWebEditor的漏洞利用还有一些技巧:
7 b/ l- ?$ W. P1.使用默认用户名和密码无法登录。( \6 w1 Q+ I& C1 D) P+ Y
请试试直接下载db目录下的ewebeditor.mdb文件,用户名和密码在eWebEditor_System表中,经过了md5加密,如果无法下载或者无法破解,那就当自己的运气不好了。0 {% n. L$ h. f' T% i
2.加了asa类型后发现还是无法上传。& A3 O! d& ]6 y) i
应该是站长懂点代码,自己修改了Upload.asp文件,但是没有关系,按照常人的思维习惯,往往会直接在sAllowExt = Replace(UCase(sAllowExt), “ASP”, “”)一句上修改,我就看见过一个站长是这样修改的:- }5 j* q# P, ~. t/ R1 S
sAllowExt = Replace(Replace(Replace(Replace(Replace(UCase(sAllowExt), “ASP”, “”), “CER”, “”), “ASA”, “”), “CDX”, “”), “HTR”, “”)
7 o0 u5 H* `; v/ m: W0 j  N猛一看什么都过滤了,但是我们只要在上传类型中增加“aaspsp”,就可以直接上传asp文件了。呵呵,是不是天才的想法?“aaspsp”过滤了 “asp”字符后,反而变成了“asp”!顺便告诉大家一个秘密,其实动网论坛7.0 sp2中也可以利用类似的方法绕过对扩展名的过滤。
* e/ x6 `+ k/ m+ H2 l# z3.上传了asp文件后,却发现该目录没有运行脚本的权限。
+ t2 E  L/ @3 }$ ^( L1 d7 t呵呵,真是好笨啊,上传类型可以改,上传路径不是也可以修改的吗?仔细看看图四。
0 L1 `1 h8 C& e8 A/ |4.已经使用了第2点中的方法,但是asp类型还是无法上传。
) Y4 o8 w  F* U; [- I' F, ^- A看来站长肯定是一个写asp的高手,但是我们还有最后一招来对付他:看到图三中的“远程类型”了吗?eWebEditor能够设定自动保存远程文件的类型,我们可以加入asp类型。但是如何才能让远程访问的asp文件能够以源码形式保存呢?方法是很多的,最简单的方法是将IIS中的“应用文件映射”中的 “asp”删除。
# `" B- _* w: L: y$ o" X后记
" S! S; Y- t: {% j' ~' M根据自己的经验,几乎只要能进入eWebEditor的后台管理,基本上都可以获得WebShell。在Google上搜索 “ewebeditor.asp?id=”能够看到长达十多页的相关信息,我大致抽查了其中几个,发现成功率约为50%。还不错吧?oblg 2.52版以前的版本也是使用eWebEditor,可以去搜索几个来练练手。要命的是eWebEditor的官方网站和帮助文件中根本没有这方面的安全提示。还有,我发现官方提供的测试系统并不存在类似的漏洞,看来不是他们不知道,而是没有把免费用户的网络安危放在心上!
' K5 t2 K0 l( w3 f- X2 v基本入侵基础漏洞. ~; T/ z- F- D" b( Y
eWebEditor 漏洞; s. N7 I. e4 ?: |

5 v- b) o) U! g& ^# e( Z各位站长在使用eWebEditor的时候是否发现,eWebEditor配置不当会使其成为网站中的隐形炸弹呢?第一次发现这漏洞源于去年的一次入侵,在山穷水尽的时候发现了eWebEditor,于是很简单就获得了WebShell。后来又有好几次利用eWebEditor进行入侵的成功经历,这才想起应该写一篇文章和大家共享一下,同时也请广大已经使用了eWebEditor的站长赶紧检查一下自己的站点。要不然,下一个被黑的就是你哦!  
9 b* }5 a- k; O  S- |' f! D
/ @# a7 a5 l% o+ A9 N漏洞利用8 I5 Q; _6 P9 {) R4 R
利用eWebEditor获得WebShell的步骤大致如下:$ ]/ M' i) y- y0 v  I
1.确定网站使用了eWebEditor。一般来说,我们只要注意发表帖子(文章)的页面是否有类似做了记号的图标,就可以大致做出判断了。
5 [( o( _4 m3 T5 ?/ U+ H2.查看源代码,找到eWebEditor的路径。点击“查看源代码”,看看源码中是否存在类似“<iframe ID='eWebEditor1' src='/edit/ewebeditor.asp?id=content&style=web' frameborder=0 scrolling=no width='550' HEIGHT='350'></iframe>”的语句。其实只有发现了存在这样的语句了,才可以真正确定这个网站使用了 eWebEditor。然后记下src='***'中的“***”,这就是eWebEditor路径。
. d" _5 ~* h4 _7 M3.访问eWebEditor的管理登录页面。eWebEditor的默认管理页面为admin_login.asp,和ewebeditor.asp在同一目录下。以上面的路径为例,我们访问的地址为:http://www.***.net/edit/admin_login.asp,看看是否出现了登录页面。) q9 d+ \/ Z2 `7 S
如果没有看到这样的页面,说明管理员已经删除了管理登录页面,呵呵,还等什么,走人啊,换个地方试试。不过一般来说,我很少看到有哪个管理员删了这个页面,试试默认的用户名:admin,密码:admin888。怎么样?成功了吧(不是默认账户请看后文)!9 @  P3 A" [+ O; [5 g" G( d
4.增加上传文件类型。点击“样式管理”,随便选择列表中底下的某一个样式的“设置,为什么要选择列表中底下的样式?因为eWebEditor自带的样式是不允许修改的,当然你也可以拷贝一个新的样式来设置。
+ l$ X* {5 i7 B# S# d' A1 b7 T. J+ @$ _& B
然后在上传的文件类型中增加“asa”类型。% F3 e: p( ]7 U) A: p" C2 N
+ m2 V8 r% g: |0 U+ p
5.上传ASP木马,获得WebShell。接下来将ASP木马的扩展名修改为asa,就可以简单上传你的ASP木马了。不要问我怎么上传啊,看到 “预览” 了吗?点击“预览”,然后选择“插入其它文件”的按钮就可以了。
' p8 {% r6 e0 T" L6 {. p! |; H9 c& P. v+ S) S6 E2 U
- x% J' {0 N9 L% {- h( G* I
漏洞原理% V8 z; {( p* a+ Y0 i9 H/ O1 K, M% O
漏洞的利用原理很简单,请看Upload.asp文件:
, p2 s+ h$ D9 X" R3 H任何情况下都不允许上传asp脚本文件1 W4 N  q( y: |, W- A
sAllowExt = replace(UCase(sAllowExt), "ASP", "")
' Y: ?! y0 k; z& {因为eWebEditor仅仅过滤了ASP文件。记得我第一次使用eWebEditor时就在纳闷:既然作者已经知道asp文件需要过滤,为什么不同时过滤asa、cer等文件呢?也许这就是对免费用户不负责任的表现吧!
8 o1 {) U4 N8 X2 s
3 M4 `: R2 l9 x) s4 L- V高级应用
# a! ~% o2 S7 n2 m* H  Y1 teWebEditor的漏洞利用还有一些技巧:  C+ d4 t0 |3 V! ]
1.使用默认用户名和密码无法登录。
8 H# X0 k: T& ~# P请试试直接下载db目录下的ewebeditor.mdb文件,用户名和密码在eWebEditor_System表中,经过了md5加密,如果无法下载或者无法****,那就当自己的运气不好了。  p  |% i# W5 ~0 r
2.加了asa类型后发现还是无法上传。
. T. |/ h3 o4 V! g" y应该是站长懂点代码,自己修改了Upload.asp文件,但是没有关系,按照常人的思维习惯,往往会直接在sAllowExt = replace(UCase(sAllowExt), "ASP", "")一句上修改,我就看见过一个站长是这样修改的:& p. g5 {  o8 f9 g4 p2 U" Z5 {  J
sAllowExt = replace(replace(replace(replace(replace(UCase(sAllowExt), "ASP", ""), "CER", ""), "ASA", ""), "CDX", ""), "HTR", "")8 k: \# \( R# t( Q' j$ b) ]$ U6 n$ S
猛一看什么都过滤了,但是我们只要在上传类型中增加“aaspsp”,就可以直接上传asp文件了。呵呵,是不是天才的想法?“aaspsp”过滤了 “asp”字符后,反而变成了“asp”!顺便告诉大家一个秘密,其实动网论坛7.0 sp2中也可以利用类似的方法绕过对扩展名的过滤。2 V4 R% x$ r& n6 k' p  N0 ^5 W
3.上传了asp文件后,却发现该目录没有运行脚本的权限。8 \4 E3 t3 k' R# h- T* }
呵呵,真是好笨啊,上传类型可以改,上传路径不是也可以修改的吗?仔细看看图四。
- B; z" T3 r9 [5 O4.已经使用了第2点中的方法,但是asp类型还是无法上传。2 E3 @% K3 q  R1 U
看来站长肯定是一个写asp的高手,但是我们还有最后一招来对付他:看到图三中的“远程类型”了吗?eWebEditor能够设定自动保存远程文件的类型,我们可以加入asp类型。但是如何才能让远程访问的asp文件能够以源码形式保存呢?方法是很多的,最简单的方法是将IIS中的“应用文件映射”中的 “asp”删除。
! m; d# M( B" d$ P% a$ D6 {# ~2 M/ a/ A5 R5 i1 n* n" N
后记) z3 d% _! n& z$ E! d) y
根据自己的经验,几乎只要能进入eWebEditor的后台管理,基本上都可以获得WebShell。在Google上搜索 “ewebeditor.asp?id=”能够看到长达十多页的相关信息,我大致抽查了其中几个,发现成功率约为50%。还不错吧?oblg 2.52版以前的版本也是使用eWebEditor,可以去搜索几个来练练手。要命的是eWebEditor的官方网站和帮助文件中根本没有这方面的安全提示。还有,我发现官方提供的测试系统并不存在类似的漏洞,看来不是他们不知道,而是没有把免费用户的网络安危放在心上!




欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/) Powered by Discuz! X3.2