суббота, 9 ноября 2013 г.

Пишем обфускатор JS на php. Часть 1

Возникла тут задача, написать код на php, который принимает js-код и обфусцирует его по самое не балуй. После курения гугла и хабра я приступил к работе. Как и следовало, я начал  того, что запустил консоль JS в хроме и начал пытаться получать строки из месива символов, вот что получилось (с пояснениями):

вторник, 11 июня 2013 г.

Кусок PHP кода для генерации regexp

Создаем regexp для фильтрации дат отстоящих на +-3 года от заданой
кому надо тот переделает


     $start = '15.07.1986';
     $start = explode('.',$start);
     $start = $start[2];
     $start -=3;
     $reg_f = array();
     $reg_f[0] = floor($start/100); //Определяем век рождения
     $reg_f[1] = floor(($start%100)/10); //Определям десятилетие
     $reg_f[2] = ($start%10); //Определяем год
     $start += 6;
     $reg_l = array();
     $reg_l[0] = floor($start/100); //Определяем век рождения
     $reg_l[1] = floor(($start%100)/10); //Определям десятилетие
     $reg_l[2] = ($start%10); //Определяем год
     $delta = array_diff_assoc($reg_l,$reg_f);//определяем где разница

     if (isset($delta[0]))  //Люди с разных веков
      $regexp .= '('.$reg_f[0].'|'.$reg_l[0].')';
     else  $regexp .= '('.$reg_f[0].')'; //Люди одного века

     $des = array();
     if (isset($delta[1]))//Разные десятилетия
      {
       for ($i=min($reg_l[1],$reg_f[1]);$i<=max($reg_l[1],$reg_f[1]);$i++)
        $des[] = $i;
      // $regexp.= '('.implode('|',$des).')';
      }
     else $regexp.='('.$reg_l[1].')'; //Одинаковые десятилетия

     if (isset($delta[2])) //Разные года
      {
       if (empty($des)) //Если нам феерически везет и десителетия совпали
            $regexp .= '['.$reg_f[2].'-'.$reg_l[2].']';
       else //Здравствуй, невезуха
         {
          $des[0] .= '['.$reg_f[2].'-9]';
          $des[1] .= '[0-'.$reg_l[2].']';
          $regexp .= '('.implode('|',$des).')';
         }
      }
     $regexp .= '/';

четверг, 23 мая 2013 г.

Индусятина....


<?
  function sub_method($method, $param, $client) #Извращения в коде - могу, умею, практикую!
   {
    $meth = str_replace('.','/',$method);
    $code = file_get_contents('method/'.$meth.'.php');
    $code = str_replace("<?", "", $code);
    $code = str_replace("?>", "", $code);
    $t = microtime();
    $t = 'fu'.$t.'f';
    $t = str_replace(" ","_",$t);
    $t = str_replace(".","_",$t);
    $code = str_replace("RunMethod", $t, $code);
    eval($code);
    $res = $t($param, $client);
    return $res;
   }
?>
Индусский код на пхп...

пятница, 17 мая 2013 г.

Рутаем MEDIOX MID7042, COBY KYROS MID7042

1)Скачиваем http://bit.ly/KugoAT http://bit.ly/L4d2mD http://bit.ly/MTZyQ2
2) распаковываем первый архив
3) Открываем эмулятор терминала и начинаем пляски святого Витта:
adb push data /data/local/tmp/ adb shell chmod 0777 /data/local/tmp/mempodroid chmod 0777 /data/local/tmp/install-recovery.sh /data/local/tmp/mempodroid 0xd7cc 0xad27 sh /data/local/tmp/root.sh 
su
/data/local/tmp/install-recovery.sh 
/system/bin/reboot-recoveryadb push 7042_boot.zip /sdcard
4) заходим в рекавери режим (включаем планшет с зажатой кнопкой назад и повышения громкости)
5)Выбираем установку с карточки, устанавливаем 7042_boot, перезагружаемся
6)Повторяем пункты 4-5 для третьего файла...
ПРОФИТ!

вторник, 14 мая 2013 г.

Устройство Wi-Fi для упоротых...

(20:09:17) Любимая: О, давно хотела тебя спросить, что такое вайфай и как он работает?
(20:09:27) Любимая: Хд
(20:09:36) Йа!: грубо говоря - интернет по радио
(20:11:37) Йа!: очень грубо говоря
(20:12:07) Любимая: А каким образом в квартире то?
(20:15:50) Йа!: к коробке специальной змея подключают сетевой, какой ты в свой шайтан-машина пихаешь сейчас, это коробка начинает вайфайемо раздавать... волны радио плывут себе пока твоя шайтаномо-машина не ловит их, она и поймает, съест и в ответ такими же рыгнет, коробка отрыжку поймает, в лаборатарию на опыты сдает и узнает что еще надо послать.
(20:16:02) Йа!: Шайтаномо, однако

понедельник, 1 апреля 2013 г.

Vim: Шпоргалка

Небольшая шпоргалка по Vim, будет расширяться по стольку, по скольку, просто для себя
:q - выход
:q! - выход без сохранения
:w - сохранить
:w! - сохранить игнорируя режим "только чтение"
:wq - сохранить и выйти :%s/TEXT1/TEXT2/g - замена
:/TEXT1 - поиск
:// - следующее найденное
:dd - вырезать строку
:ndd - вырезать n строк
:p - вставить после текущей
:u - отмена