php curl konusunda destek verebilecek biri var mı?
birkaç gündür login olamadığım bir panel var. curl ile bağlanıyordum ama artık login sistemi sanırım değişti. gözden bir şeyi kaçırıyorum ama neyi bulamadım. bu konuda yardımcı olabilecek biri var mı?
siteye normal olarak ajax ile login oluyoruz.
curl ile bunu olabildiğince taklit ettim. giriş de yapıyordum fakat her ne yaptılarsa giremiyorum. login'de post kısmı görünüyor tekrar kayboluyor. burpsuite önermişti burada biri. onunla baktığımda login adresinin ve form ögelerinin isimlerinin aynı olduğunu görüyorum.
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (4)
@abdullahx hocam teşekkür ederim. burpsuite olmadan login kısmını bu kodla yakalayabildim.
curl ile bağlantı kurmakta halen sorun yaşıyorum. bu bilgileri curl ile gönderdiğimde giriş yapamıyorum.
bu logini hemen kaybetmelerinin sebebi bu olsa gerek. böyle bir şey nasıl aşılır?
$cookie_file = dirname(__FILE__) . '/haremaltin.cookie';
login('email', 'pass');
header('Content-Type: application/json');
echo curl_request('GET', 'https://www.sitedadi.com/servis');
function login($email, $pass) {
return curl_request(
'POST',
'httplogindizin',
'login_user=' . urlencode($email) . '&login_password=' . urlencode($pass) . '&rememberMe=on',
array(
'Host: www.sitedadi.com/',
'Content-Length: 59',
'Accept: */*',
'Content-Type: application/x-www-form-urlencoded; charset=UTF-8',
'X-Requested-With: XMLHttpRequest',
'Sec-Ch-Ua-Mobile: ?0',
'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36',
'Origin: www.sitedadi.com',
'Sec-Fetch-Site: same-origin',
'Sec-Fetch-Mode: cors',
'Sec-Fetch-Dest: empty',
'Referer: www.sitedadi.com',
'Accept-Encoding: gzip, deflate',
'Accept-Language: tr-TR,tr;q=0.9,en-US;q=0.8,en;q=0.7',
'Connection: close'
)
);
}
function curl_request($method, $url, $post_fields = null, $http_header = []) {
global $cookie_file;
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => $method,
CURLOPT_POSTFIELDS => $post_fields,
CURLOPT_COOKIEFILE => $cookie_file,
CURLOPT_COOKIEJAR => $cookie_file
));
Konsola sırasıyla şu kodları yazıp enter a bastıktan sonra ağ hareketlerini sayfa değişmeden takip edebilirsiniz.
$('#login_giris').off("click")
$('#login_giris').on("click", function() {
var form_data = $('#login_form').serialize();
$.ajax({
"url": "/ajax/login",
"method": "POST",
"data": form_data,
success: function(cevap) {
if (cevap.login != undefined && cevap.login == true && cevap.redirect != undefined) {
if (cevap.rememberme != undefined) {
document.cookie = "rememberme=" + cevap.rememberme + ';max-age=' + (60 * 60 * 24 * 365 * 5);
}
if (url_redirect != undefined && url_redirect != '') {
console.log(url_redirect)
} else {
console.log(cevap.redirect)
}
} else {
document.cookie = "rememberme=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;";
showModalMesaj("Kullanıcı adı/şifre hatalı.");
}
},
error: function(err) {
showModalMesaj('LOGIN HATA');
}
});
});
Gelen yönlendirme sayfasını konsola basar
@omerf buradan atmam doğru olmayabilir diye aslında başta atmak istemedim. herhangi bir mail adresi verebilir misiniz? ya da buradan atmam sorun olmayacak ise buradan da atayım.
site sahiplerine asla ulaşamadığım için bunu yapmayı denemiştim. zaten iletişim butonları ve formları çalışmıyor siteye girince görmek mümkün. kendileri ile ticaretim var fakat teknik ekibi ile iletişime geçemiyoruz. tabii ki bu yaptığımı aklamıyor arada kaldım şimdi :(
şöyle de verebilirim sanırım bu indexe kapalı olacaktır (base64):
aGFyZW1hbHRpbi5jb20=
email onaysız kayıt olup panele girdiğinizde all_price ile veri geldiğini görürsünüz.
elimdeki curl kodlarını da paylaşabilirim geçen hafta çalışıyordu