ugrás a tartalomhoz

oldal ne nyíljon meg iframe-ben

H.Z. · 2013. Már. 28. (Cs), 11.15
Nem is tudom, hova illene a téma.
Pár napja egy biztonsággal foglalkozó blogot nézegettem és eszembe jutott, hogy épp be vagyok jelentkezve a gmailbe IRL néven. Erről már nem tudom, hogy miért, az ugrott be, hogy ha egy meglátogatott oldal most megnyitná a gmailt egy rejtett iframe-ben, akkor gond nélkül hozzáférne az e-mail címemhez, adott esetben a valódi nevemhez is.
Később kipróbáltam, szerencsére a gmaillel nem működött (hacsak nem én szúrtam el valamit), de például a freemail-lel gond nélkül.
Tipp spammereknek: így lehet a látogatók akarata ellenére mail címeket gyűjteni! ;)

A kérdésem mindössze annyi lenne, hogy ti hogy álltok az ilyesmihez? Ha valami kényes adatokat is tartalmazó oldalt készítetek, szoktatok rá ügyelni, hogy például iframe-ben ne lehessen megnyitni a lapot? (feltételezem: ha a google megoldotta, akkor kivitelezhető)
 
1

Ha lesz időm, leellenőrzöm,

Hidvégi Gábor · 2013. Már. 28. (Cs), 11.28
Ha lesz időm, leellenőrzöm, de szerintem scriptből nem lehet elérni egy másik domain-re megnyitott iframe tartalmát.
2

Úgy van. Lásd Same origin

kuka · 2013. Már. 28. (Cs), 11.32
Úgy van. Lásd Same origin policy.
6

Nem is értettem, hogy miért

H.Z. · 2013. Már. 28. (Cs), 11.51
Nem is értettem, hogy miért működik...
Egészen odáig nem volt semmi gond, hogy doc=document.getElementById("iframeidje").contentDocument;

Amikor a doc. hivatkozással akartam valamit kezdeni, akkor már visszapofázott a böngésző, de idáig csak most jutottam el, hogy olvastam a válaszodat. :)
3

Köszi, ehhez fel kellett

H.Z. · 2013. Már. 28. (Cs), 11.37
Köszi, ehhez fel kellett volna eleveníteni a rég elfelejtett JS ismereteimet.
4

írtam ilyet

Poetro · 2013. Már. 28. (Cs), 11.48
Én annó írtam kódot arra, hogy kitörjön az oldal az iframe-ből amennyiben abban lett megnyitva. Azt már nem tudom, pontosan hogy volt megvalósítva, de azt hiszem referer-t is ellenőriztem,.hogy azért saját domain alatt lehessen saját oldalról iframe-ként beszúrni.
/**
 * @file
 * Bust out from the frame.
 */
(function (window) {
  var topLocation = window.top.location,
      location = window.location,
      localhost = location.hostname,
      tophost;

  /**
   * Get the domain name from the full domain.
   */
  function domain(host) {
    return host && host.split('.').slice(-2).join('.');
  }

  // Get the hostname if available (this will likely to fail cross domain).
  try { tophost = topLocation.hostname; } catch (e) {}

  // If we are cross domain, replace the top location with ours.
  if (!tophost || (location !== topLocation && tophost !== localhost && domain(tophost) !== domain(localhost))) {
    topLocation.replace(location.href);
    // Also don't try to load anything further.
    location.replace("about:blank");
  }
}(this));
5

Köszi, közben kiderült, hogy

H.Z. · 2013. Már. 28. (Cs), 11.49
Köszi, közben kiderült, hogy a document objectet még el tudom kérni az iframe-ből, de ha annak a belsejére hivatkoznék, akkor már "permission denied" az eredmény. Szóval csak a szokásos kapkodás eredménye ez a topik. :(