Bunun sahibi başka bir site / sunucu için bir çerez ayarlamak mümkün mü?

7 Cevap php

Here's the quick version of my question:

Bu tanımlama, farklı bir sunucuya (bu durumda bir Exchange posta sunucusu) ile birlikte kullanılmak üzere bir müşterinin tarayıcısına şekilde bir çerez ayarlamak mümkün mü? Bu senaryoda cookie kurmaya çalışırken sunucu "intranet.myschool.edu" olduğu ve döviz sunucu "owa_server.myschool.edu" yer almaktadır.


Here's the full question:

Ben Kimlik etkin Forms tabanlı olan bizim Exchange sunucusuna bir HTTP POST yapmak için cURL kullanan bir php komut dosyası var.

When I make a successful HTTP POST (which includes the user/pass in the posted url), the Exchange Server (or more specifically, the https://my.school.edu/exchweb/bin/auth/owaauth.dll file) outputs cookies. Specifically, it outputs a "sessionid" and a "cadata" id.

Sunucusundaki bir metin dosyasına yazılmış bu çerez kimlikleri ile, cURL / PHP başvurmak ve sonra Exchange / OWA sunucusu (WebDAV ve bu tür yoluyla) verileri talep.

That part works. The problem I'd like to solve is now passing the cookie ids to a clients browser, so that they can use these cookie ids to auto-login to their own OWA account.

Özünde bizim kullanıcılar Active Directory kimlikleri ile intranet giriş ve onların son e-postaların bir anlık görmek istiyorum. Onlar gerekiyorsa Sonra, ben onları tam OWA web uygulaması üzerinden geçmek için küçük bir link vermek istiyorum. Bu anahtar olduğunda, onları elle OWA giriş zorunda istemiyorum. Zaten intranet önünde Active Directory UserName ve şifrenizi gönderdikten beri, ben onları otomatik giriş OWA içine olmak istiyorum.

Ben Mac OS, Windows ve Linux karışımı var çünkü tek bir oturum yapmak için denemek için Windows kimlik doğrulaması kullanarak mümkün olmadığına dikkat etmelidir.

Ben bir "setcookie" yapmak ve cURL var çerez kimlikleri atamak ve müşteriler tarayıcı içine onları koymak mümkün olacağını düşündüm.

Is this not possible? Is it not possible to "spoof" Exchange/OWA (or any other site) this way. I have legitimate cookie ids that cURL captured. Is there no way to pass these to a client browser on a different computer?

In a worst case scenario, would using Javascript to just auto paste the username and password into the OWA login page be my only hope? Does anyone have any other ideas on how to avoid my double login problem with Exchange/OWA?

Sağlanan herhangi bir yardım için teşekkür ederiz!

7 Cevap

Dan RFC 2965 (NB HDN = "ana etki alanı adı)

Host A's name domain-matches host B's if

  *  their host name strings string-compare equal; or

  * A is a HDN string and has the form NB, where N is a non-empty
     name string, B has the form .B', and B' is a HDN string.  (So,
     x.y.com domain-matches .Y.com but not Y.com.)

Note that domain-match is not a commutative operation: a.b.c.com
domain-matches .c.com, but not the reverse.

Alan çalışması gerektiğini, böylece .myschool.edu kullanarak. NB açar. esastır

Sen may '. Myschool.edu' bir etki alanı bölümü ile bir çerez ayarlamak mümkün. Ardından 'myschool.edu' bir alt etki altında barındırılan başka bir siteye gönderilen teoride.

Ancak uygulamada, istemci yazılım çerez kapsamı çok geniş olduğuna karar, ve onu geri göndermek için reddedebilir.

Ben mümkün olsaydı, bu ciddi bir güvenlik kaçamak olacağını düşünüyorum ...

Bu senaryoda cookie kurmaya çalışırken sunucu "intranet.myschool.edu" olduğu ve döviz sunucu "owa_server.myschool.edu" yer almaktadır.

Bunu yapmak mümkün olmalıdır.

(Ben örnek amacıyla isimlerini değişecek) benim sitede bu yapın:

Ben url bir web uygulaması var

webapp.domain.com

Kullanıcıların oturum zaman, ben de bir PunBB forum paketinin çerez ayarlayın:

forum.domain.com

PunBB forum çerez temizleme / ayarlayarak, otomatik olarak tabii bu kayıtları, syncrhonized benim durumumda ben forum kaydı kaldırılır ve ana site kayıt forum oluşturur varsayar (kolaylık için kendi forum hesabı benim kullanıcıları çıkış / giriş yapabilirsiniz kullanıcı hesabı).

Yapmanız gereken tüm "/" (varsayılan) çerez yolunu ayarlamak, ve "domain.com" için çerez etki alanını ayarlamak için alt alan # 1'de. Sonra subdomain # 2 app çerez görmelisiniz.

EDIT: ". Domain.com" Ben barrowc Ben sitesi çerez etki alanı için "domain.com" kullanır, bazı örneklerde desen gördüm yanıtladı ve (belki php set_cookie çok çalışıyor görmek eksik ise önde gelen bir nokta ekler?)

Tarayıcınız karar alır ... ama genelde hayır, yapamazsın. Bu XSS açığı bir türü olarak kabul edilir.

Eğer, yani çerez ayarlamak için bir iframe kullanabilirsiniz. kendi istediği çerez almak veya post değişkenleri olarak vars ile döviz http sunucusu (https://my.school.edu/exchweb/) üzerinde bir sayfa için bir istekte web sunucusu üzerinde bir iframe var. o etki alanı için çerez ayarlamak için değişkenler kullanmak ve döviz sunucuya yönlendirir.

Şimdi, ip adresi, kullanıcı ajanı, vb denetler OWA arka uç mantığı var olabilir ... Emin ..... bu değil geçersiz kılabilir oturumu kaydederken

Biz ile gelebilir en iyi web sunucusu HER GİRİŞ de Exchange için çerez almak için izin veriyor, ay boyunca zor bu bir mücadele ettik. Sorun çerez afinite olmadan, biz web sunucusu tarafından elde edilen çerez, istemci bağlanır aynı yük dengeli düğümden geldi emin olmak için bir yol yok olmasıdır.