ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #12091  
Старый 01.09.2009, 20:10
Аватар для RedBull@12
RedBull@12
Участник форума
Регистрация: 06.11.2006
Сообщений: 129
Провел на форуме:
482261

Репутация: 58
По умолчанию

Цитата:
Сообщение от FireFenix  
тада
ну не все.....а к которым кросс доступ нужен
не это как-то не по-гиковски...я предлагаю как вариант...пропарсить инклудный файл, конструктором автостарта регуярками....сейачс напишу....посмотрим что получится=)
 
Ответить с цитированием

  #12092  
Старый 01.09.2009, 20:25
Аватар для FireFenix
FireFenix
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме:
3178262

Репутация: 389
По умолчанию

Цитата:
Сообщение от RedBull@12  
не это как-то не по-гиковски...я предлагаю как вариант...пропарсить инклудный файл, конструктором автостарта регуярками....сейачс напишу....посмотрим что получится=)
Это индусский код - передавать глоабльные переменные через подключаемый файл...... для каждого нового класса
 
Ответить с цитированием

  #12093  
Старый 01.09.2009, 21:00
Аватар для RedBull@12
RedBull@12
Участник форума
Регистрация: 06.11.2006
Сообщений: 129
Провел на форуме:
482261

Репутация: 58
По умолчанию

Цитата:
Сообщение от FireFenix  
Это индусский код - передавать глоабльные переменные через подключаемый файл...... для каждого нового класса
1- не для каждого нового класса, а для экзампляров.
2- сейча напишу посмотрим что получится.
просто использовать класс в качестве контейнера, это совершенно дико...не считая что это только частичное копирование данных...копипастом можно заниматься и так...ручками все коды собирать и нахер убрать php

Последний раз редактировалось RedBull@12; 01.09.2009 в 21:08..
 
Ответить с цитированием

ЭВРИКА!
  #12094  
Старый 01.09.2009, 21:58
Аватар для RedBull@12
RedBull@12
Участник форума
Регистрация: 06.11.2006
Сообщений: 129
Провел на форуме:
482261

Репутация: 58
По умолчанию ЭВРИКА!

Ура!
2FireFenix,элементарно все оказалось!
PHP код:
<?php
class base {    
 public 
$vars;   
 function 
__construct() {      
  require_once(
"vars.php");      
  
$this->vars $__VARS;      
  
print_r($this->vars);    
 }  
}  
$base = new base;
?>

Последний раз редактировалось RedBull@12; 01.09.2009 в 22:01..
 
Ответить с цитированием

  #12095  
Старый 02.09.2009, 02:31
Аватар для zavra
zavra
Участник форума
Регистрация: 12.03.2008
Сообщений: 159
Провел на форуме:
912928

Репутация: 137
Отправить сообщение для zavra с помощью ICQ
По умолчанию

PHP код:
<?

$method
="POST";
$addr="/login.php"//адрес относительно корня сервера, 
$target="127.0.0.1"//ip адрес сервера, или прокси сервера, через который оправить запрос
$targetport=80//порт сервера или прокси

$postvars="op=a_login_attempt&email=zzz@mail.ru&pass=zzzzzz&expire=0";
$len=strlen($postvars);

$in=
"$method $addr HTTP/1.1\r\n".
"Host: vkontakte.ru\r\n".
"User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; ru; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2\r\n".
"Accept: */*\r\n".
"Accept-Language: ru,en-us;q=0.7,en;q=0.3\r\n".
"Accept-Encoding: gzip,deflate\r\n".
"Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7\r\n".
"Keep-Alive: 300\r\n".
"Connection: keep-alive\r\n".
"Content-Length: $len\r\n\r\n".
$postvars;

echo 
$in;

$socket socket_create (AF_INETSOCK_STREAM0);
$result socket_connect ($socket$target$targetport);
socket_write($socket$instrlen($in));
$o="";
while (
$out socket_read ($socket2048)) {
   
$o.=$out;
}
echo 
$o;
?>
Однако при тесте показывает 404 страница хостера вместо ответа от сервера =( можно как-то проще сделать, а не через сокет?

Последний раз редактировалось zavra; 02.09.2009 в 02:34..
 
Ответить с цитированием

  #12096  
Старый 02.09.2009, 02:50
Аватар для RedBull@12
RedBull@12
Участник форума
Регистрация: 06.11.2006
Сообщений: 129
Провел на форуме:
482261

Репутация: 58
По умолчанию

Цитата:
Сообщение от zavra  
PHP код:
<?

$method
="POST";
$addr="/login.php"//адрес относительно корня сервера, 
$target="127.0.0.1"//ip адрес сервера, или прокси сервера, через который оправить запрос
$targetport=80//порт сервера или прокси

$postvars="op=a_login_attempt&email=zzz@mail.ru&pass=zzzzzz&expire=0";
$len=strlen($postvars);

$in=
"$method $addr HTTP/1.1\r\n".
"Host: vkontakte.ru\r\n".
"User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; ru; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2\r\n".
"Accept: */*\r\n".
"Accept-Language: ru,en-us;q=0.7,en;q=0.3\r\n".
"Accept-Encoding: gzip,deflate\r\n".
"Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7\r\n".
"Keep-Alive: 300\r\n".
"Connection: keep-alive\r\n".
"Content-Length: $len\r\n\r\n".
$postvars;

echo 
$in;

$socket socket_create (AF_INETSOCK_STREAM0);
$result socket_connect ($socket$target$targetport);
socket_write($socket$instrlen($in));
$o="";
while (
$out socket_read ($socket2048)) {
   
$o.=$out;
}
echo 
$o;
?>
Однако при тесте показывает 404 страница хостера вместо ответа от сервера =( можно как-то проще сделать, а не через сокет?
так у вас адрес локальный, а хост в запросе порписан vkontakte.ru...
можно через cURL
PHP код:
$c curl_init();      
curl_setopt($cCURLOPT_URL"http://vkontakte.ru/");    
curl_setopt($cCURLOPT_REFERER"http://vkontakte.ru/");      
curl_setopt($cCURLOPT_USERAGENT"9.60 beta под Windows XP — Opera/9.60 (Windows NT 5.1; U; en) Presto/2.1.1");      
curl_setopt($cCURLOPT_HEADER1);      
curl_setopt($cCURLOPT_RETURNTRANSFER1);      
$body curl_exec($c);
curl_close($c);
//это обычный гет 
PHP код:
$c curl_init();  
curl_setopt($cCURLOPT_URL"http://vkontakte.ru");
curl_setopt($cCURLOPT_REFERER"http://vkontakte.ru");
curl_setopt($cCURLOPT_USERAGENT"9.60 beta под Windows XP — Opera/9.60 (Windows NT 5.1; U; en) Presto/2.1.1");
curl_setopt($cCURLOPT_HEADER1);
curl_setopt($cCURLOPT_POST1);
curl_setopt($cCURLOPT_POSTFIELDS$post);
curl_setopt($cCURLOPT_RETURNTRANSFER1);
curl_setopt($cCURLOPT_COOKIE$cookies);
$body curl_exec($c);
curl_close($c);
//это пост 
http://www.php.su/functions/?cat=curl здесь подробно описао какие ключи что значат. икак пользоваться...
PHP код:
preg_match_all('|Set-Cookie: (.*);|U'$body$results);
$cookies implode(';'$results[1]); 
регулярка для выдерания куков из пришедших хедеров

Последний раз редактировалось RedBull@12; 02.09.2009 в 03:01..
 
Ответить с цитированием

  #12097  
Старый 02.09.2009, 03:20
Аватар для zavra
zavra
Участник форума
Регистрация: 12.03.2008
Сообщений: 159
Провел на форуме:
912928

Репутация: 137
Отправить сообщение для zavra с помощью ICQ
По умолчанию

прописал в хост http://vkontakte.ru, выдает 400 Bad Request
через curl для меня еще сложнее( но такой вариант тоже попробую, спс. с сокетами хочется до конца разобраться
 
Ответить с цитированием

  #12098  
Старый 02.09.2009, 04:05
Аватар для RedBull@12
RedBull@12
Участник форума
Регистрация: 06.11.2006
Сообщений: 129
Провел на форуме:
482261

Репутация: 58
Question

тут написал функцию аунтификации и идентификации....подскажите возможно ли обойти данную аунтификацию.
cоотвественно если да, то каким макаром.
PHP код:
  public function security($string,$i) {
    if (
$i == 0) { ...  }
    elseif (
$i == 1) { ... }
    elseif (
$i == 2) { ... }
    elseif (
$i == 3) {
      
$string mysql_real_escape_string($string);
    }
    return 
$string;
  }
}

public function 
login($login,$pass) {
    
$this->connect();
    
$login strtolower($this->security($login,3));
    
$login base64_encode($login);
    
$pass base64_encode($this->security($pass,3));
    
$result $this->query("SELECT * FROM `users` WHERE `login`='".$login."' AND `pass`='".$pass."'");
    if (
$result && mysql_num_rows($result) > 0) {
      
$ses session_id();
      if (
preg_match("|([a-zA-Z0-9])+|i",$ses) && preg_match("|([0-9\.])+|i",$_SERVER["REMOTE_ADDR"])) {
        
$agent $this->security($_SERVER['HTTP_USER_AGENT'],3);
        
$referer $this->security($_SERVER['HTTP_REFERER'],3);
        
$forwarded $this->security(getenv(HTTP_X_FORWARDED_FOR),3);
        
$ip $_SERVER["REMOTE_ADDR"];
        
$time time() + (60*60*6);
        
$result $this->query("INSET INTO `login`(`hash`,`date_begin`,`date_end`,`login`,`ip`,`agent`,`referer`,`forwarded`) VALUES('".$ses."','".time()."','".$time."','".base64_decode($login)."','".$ip."','".$agent."','".$referer."','".$forwarded."')");
      }
    }
    else {  }
    
$this->close();
  }
  public function 
ident() {
    
$this->connect();
    
$ses session_id();
    if (
preg_match("|([a-zA-Z0-9])+|i",$ses) && preg_match("|([0-9\.])+|i",$_SERVER["REMOTE_ADDR"])) {
      
$result $this->query("SELECT * FROM `login` WHERE `hash`='".$ses."' AND `ip`='".$_SERVER["REMOTE_ADDR"]."'");
      if (
$result && mysql_num_rows($result) > 0) {
        
$row mysql_fetch_array($resultMYSQL_ASSOC);
        if (
$row['date_begin'] <= time() && $row['date_end'] >= time()) {
          return 
1;
        }
        else { return 
0; }
      }
      else { return 
0; }
    }
    else { return 
0; }
    
$this->close();
  } 
 
Ответить с цитированием

  #12099  
Старый 02.09.2009, 04:07
Аватар для RedBull@12
RedBull@12
Участник форума
Регистрация: 06.11.2006
Сообщений: 129
Провел на форуме:
482261

Репутация: 58
По умолчанию

Цитата:
Сообщение от zavra  
прописал в хост http://vkontakte.ru, выдает 400 Bad Request
через curl для меня еще сложнее( но такой вариант тоже попробую, спс. с сокетами хочется до конца разобраться
честно говоря с сокетами плохо знаком, но вот cURL довольно хорошо знаю. примеры кода который скинул..это с рабочего движка.
 
Ответить с цитированием

  #12100  
Старый 02.09.2009, 05:20
Аватар для RedBull@12
RedBull@12
Участник форума
Регистрация: 06.11.2006
Сообщений: 129
Провел на форуме:
482261

Репутация: 58
По умолчанию

Цитата:
Сообщение от b3  
PHP код:
$result $this->query("SELECT * FROM `users` WHERE `login`='".$login."' AND `pass`='".$pass."'"); 
если нет addslashes() в форме то можно авторизоватся введя логин: 1 or 1=1-- 1
и любой пароль.
=/...а чем не нравится mysql_real_escape_string через которую все пропускается...специально привел секьюрный метод...
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Delphi, .NET, Asm 5420 17.06.2010 13:33
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Форумы 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ