Вопрос по кодировкам!!!

Discussion in 'PHP' started by AoD, 26 Sep 2006.

  1. AoD

    AoD Elder - Старейшина

    Joined:
    10 Feb 2006
    Messages:
    29
    Likes Received:
    11
    Reputations:
    2
    Вопрос такой что это за кодировка? Я так понимаю десятиричьная

    Code:
    %uE8FC%u0044%u0000%u458B%u8B3C%u057C%u0178
    И как средствами PHP первести кодировку такого вида

    Code:
    \x29\xc9\x83\xe9\xb8\xd9\xee\xd9\x74\x24\xf4\x5b\x81\x73\x13\x8e
    в вышеупомянутую?
     
  2. [hidden]

    [hidden] Elder - Старейшина

    Joined:
    5 Nov 2005
    Messages:
    70
    Likes Received:
    19
    Reputations:
    7
    Unicode.

    Переводи строки функцией iconv
     
  3. AoD

    AoD Elder - Старейшина

    Joined:
    10 Feb 2006
    Messages:
    29
    Likes Received:
    11
    Reputations:
    2
    Прошу объяснить конкретней с примером на PHP
    по примеру из первого топика

    Функция: iconv('исходная кодировка', 'нужная кодировка', 'строка')
     
  4. AoD

    AoD Elder - Старейшина

    Joined:
    10 Feb 2006
    Messages:
    29
    Likes Received:
    11
    Reputations:
    2
    Ну что никто не хочет плюсик заработать. Мне чего-то думать сегодня самому лень.
     
  5. AoD

    AoD Elder - Старейшина

    Joined:
    10 Feb 2006
    Messages:
    29
    Likes Received:
    11
    Reputations:
    2
    ВОщем вот это
    Code:
    %uE8FC%u0044%u0000%u458B%u8B3C%u057C%u0178
    есть UTF-16, а это
    Code:
    \x29\xc9\x83\xe9\xb8\xd9\xee\xd9
    ну просто обычьный hex дык вот как из hex-а замутить UTF-16 на PHP мож так понятней. У меня чёт функция "iconv" не пашет. Хотя наверное у меня руки просто кривые Ж-). ГЫ Ну чё нет вариантов?
     
  6. Pochka

    Pochka Banned

    Joined:
    26 Nov 2005
    Messages:
    27
    Likes Received:
    7
    Reputations:
    -2
    У тебя в двух разных вариантах записаны числа, которые какая-либо программа должна толковать как "записать такие-то числа, выделив под них столько-то места", к кодировке это отношения не имеет
     
  7. AoD

    AoD Elder - Старейшина

    Joined:
    10 Feb 2006
    Messages:
    29
    Likes Received:
    11
    Reputations:
    2

    Числа здесь просто как пример. Это куски кода разных bind-shell кодов, то есть мне необходимо формат одного shell-кода записанного в hex-e преобразовать в другой вид, записанный в utf-16 вот и всё.
     
  8. Pochka

    Pochka Banned

    Joined:
    26 Nov 2005
    Messages:
    27
    Likes Received:
    7
    Reputations:
    -2
    %uE8FC%u0044%u0000%u458B%u8B3C%u057C%u0178

    ->

    \xE8\xFC\x00\x44\x00\x00\x45\x8B\x8B\x3C\x05\x7C\x01\x78
    PHP:
    <?
    function 
    pervoe_vo_vtotor($str){
    $str str_replace('%'''$str);
    $i 0;
    while(isset(
    $str[$i+1])){
    @
    $retval .= '\\x'.$str[$i].$str[$i+1];
    $i+=2;
    }
    return 
    $retval;
    }

    function 
    vtoroe_v_pervoe($str){
    $str str_replace('\\x'''$str);
    $for strlen($str) % 4;
    if(
    $for != 4)
    for(
    $i 0$i $for$i++)
    $str '0'.$str;

    while(isset(
    $str[$i])){
    @
    $retval .= '%'.substr($str[$i], $i$i+4);
    $i+=4;
    }
    return 
    $retval;
    }

    ?>
    Не проверял функции, но смысл понятен
     
    #8 Pochka, 26 Sep 2006
    Last edited by a moderator: 26 Sep 2006
    2 people like this.
  9. SMiX

    SMiX Elder - Старейшина

    Joined:
    25 Jul 2005
    Messages:
    227
    Likes Received:
    55
    Reputations:
    29
    Функция Pochk'и отображает алгоритм, но содержит логические ошибки.
    Функция массам не понадобится - пусть товарищ AoD доделает сам. Причина та же, по какой делают неслучайные ошибка в сплоях.
     
    1 person likes this.
  10. Trinux

    Trinux Members of Antichat

    Joined:
    26 Nov 2004
    Messages:
    1,403
    Likes Received:
    296
    Reputations:
    364
    кодировки то однобитные, если не ошибаюсь =))) можно тупо str_replace()`ом зафигачить
     
    _________________________
  11. hidden

    hidden 7H3 0N3

    Joined:
    23 Apr 2006
    Messages:
    550
    Likes Received:
    332
    Reputations:
    386
    Точнее preg_replace
    Code:
    [color=#00AA00][color=#0000FF]<?[/COLOR]
    $str[color=#0000FF]=[/COLOR][/COLOR][color=#FFFF00]'%uE8FC%u0044%u0000%u458B%u8B3C%u057C%u0178'[/COLOR][color=#00AA00][color=#FF0000];[/COLOR]
    $str[color=#0000FF]=[/COLOR][color=#00FF00]preg_replace[/COLOR][color=#0000FF]([/COLOR][/COLOR][color=#FFFF00]'[color=#FF0000]/[/COLOR]%u[color=#00FF00]([[/COLOR]a[color=#00FF00]-[/COLOR]f0[color=#00FF00]-[/COLOR]9[color=#00FF00]][/COLOR]{2}[color=#00FF00])([/COLOR][color=#00FF00][[/COLOR]a[color=#00FF00]-[/COLOR]f0[color=#00FF00]-[/COLOR]9[color=#00FF00]][/COLOR]{2}[color=#00FF00])[/COLOR][color=#FF0000]/i[/COLOR]'[/COLOR][color=#00AA00][color=#0000FF],[/COLOR][/COLOR][color=#FFFF00]'\\\\x$1\\\\x$2'[/COLOR][color=#00AA00][color=#0000FF],[/COLOR]$str[color=#0000FF])[/COLOR][color=#FF0000];[/COLOR]
    [color=#00FF00]echo[/COLOR] [/COLOR][color=#FFFF00]"[color=#00AA00]$str[/COLOR]<br/>"[/COLOR][color=#00AA00][color=#FF0000];[/COLOR]
    $str[color=#0000FF]=[/COLOR][color=#00FF00]preg_replace[/COLOR][color=#0000FF]([/COLOR][/COLOR][color=#FFFF00]'[color=#FF0000]/[/COLOR][color=#FFFFFF]\x5C[/COLOR]x[color=#00FF00]([[/COLOR]a[color=#00FF00]-[/COLOR]f0[color=#00FF00]-[/COLOR]9[color=#00FF00]][/COLOR]{2}[color=#00FF00])[/COLOR][color=#FFFFFF]\x5C[/COLOR]x[color=#00FF00]([[/COLOR]a[color=#00FF00]-[/COLOR]f0[color=#00FF00]-[/COLOR]9[color=#00FF00]][/COLOR]{2}[color=#00FF00])[/COLOR][color=#FF0000]/i[/COLOR]'[/COLOR][color=#00AA00][color=#0000FF],[/COLOR][/COLOR][color=#FFFF00]'%u$1$2'[/COLOR][color=#00AA00][color=#0000FF],[/COLOR]$str[color=#0000FF])[/COLOR][color=#FF0000];[/COLOR]
    [color=#00FF00]echo[/COLOR] $str[color=#FF0000];[/COLOR]
    [color=#0000FF]?>[/COLOR][/COLOR]