Feedly kradł Twoje treści - oto historia i ich kod

  • Gabriel Brooks
  • 0
  • 4335
  • 587
Reklama

W ubiegłym tygodniu Feedly wprowadził kontrowersyjny nowy “cecha” - przejmowanie linków do kanałów w celu kradzieży ruchu od milionów blogerów.

Przekierowanie udostępnionych linków za pomocą Feedly do własnego widoku Feedly zamiast samego artykułu na oryginalnej stronie jest problemem dla twórców oryginalnych treści na wielu blogach. Powoduje to nie tylko utratę ruchu, ale jest także zwodnicze dla tych, którzy śledzą dany blog.

Oto pełna historia tego, dlaczego ludzie są źli i jak jeden bloger pomógł naprawić sytuację. Zagłębiam się również w ich kod źródłowy, aby pokazać, jak brudne są ich małe sztuczki.

Termin wymagalności kredytu: Czytnik cyfrowy był oryginalnym źródłem tych wiadomości - postanowiłem po prostu zbadać nieco więcej i zobaczyć dokładnie, co zamierzają.

Po pierwsze, Dobra Nowina

W momencie pisania tego tekstu zachowanie zostało nieco poprawione, dzięki czemu skrócone linki Feedly są rzeczywiście wysyłane do strony autora, ale szybkie sprawdzenie kodu stanu HTTP 10 najpopularniejszych stron z kodami błędów i rozwiązywanie problemów 10 najpopularniejszych stron z kodami błędów i Rozwiązywanie problemów ujawniło, że przekierowanie nie zostało wykonane w typowy sposób na poziomie serwera z przekierowaniem 301 lub 302 (200, które wysyła Feedly, oznacza “tak, mamy tę stronę, poczekaj”; 404 oznacza “nie znaleziono”; 301 oznacza “stałe przekierowanie do innego adresu URL; podczas gdy 302 oznacza “tymczasowe przekierowanie”).

Oznaczało to, że przekierowanie odbywało się w JavaScript, więc chciałem dowiedzieć się więcej. Korzystając z narzędzia do pobierania strony wiersza poleceń o nazwie curl, byłem w stanie pobrać kod źródłowy przykładowego łącza Feedly do Techmeme.com, zanim nastąpiło przekierowanie (ponieważ CURL nie uruchomi JavaScript) - i ujawniło to kilka zaskakujących ciekawostek. Oto co znalazłem.

(Przesłałem tutaj pełne źródło, jeśli chcesz rzucić okiem - poniżej zamieszczam tylko kilka interesujących fragmentów)

Niektóre osoby martwiły się konsekwencjami SEO polegającymi na tym, że ich treść została skradziona i ponownie opublikowana w innym miejscu; dobrą wiadomością jest to, że Feedly poprawnie ustawił rel =“kanoniczny” metatag instruujący Google, że wszystkie wartości linków powinny być przekazywane do oryginalnej witryny. Nie można jednak ustalić, czy zostało to dodane po rozpoczęciu reklamacji, czy było obecne od samego początku.

  

Rozbierają reklamy

W prawdopodobnie błędnej próbie zduplikowania funkcji typu czytelności 6 zakładek, które zwiększą szybkość i wydajność surfowania po Internecie 6 zakładek, które zwiększą prędkość i wydajność surfowania po Internecie Zakładki to nieświadomi pomocnicy, którzy siedzą na pasku zakładek przeglądarki. W przeciwieństwie do zwykłych zakładek, nie archiwizują one adresów URL, a raczej bookmarklety to małe aplety Java z funkcją jednego kliknięcia. Istnieją setki…, które sprowadzają stronę do jej podstawowych zasad, Feedly usunął wszystkie przyciski reklamowe, śledzenia i udostępniania społecznościowego, które mogły być osadzone w oryginalnym elemencie kanału. Oto pełna lista rzeczy, które są usuwane:

 var visualExcludePatterns = [„feedproxy”, „feedburner”, „/ ~”, „feeds.wordpress.com”, „stats.wordpress.com”, „googleadservices.com”, „feedads”, „tweet-this”, „ fmpub ”,„ - ads ”,„ _ ads ”,„ pheedo ”,„ zemanta ”,„ u.npr.org/iserver","openx.org","slashdot-it","smilies","/ico- ”,„ commindo-media.de ”,„ creatives.commindo-media ”,„ doubleclick.net ”,„ i.techcrunch ”,„ adview ”,„ / feed.gif ”,„. ads. ”,„ / avw .php”,„wp-digg-this”, „feed-injector”, „/ plugins /”, „tweetmeme.com”, „_ icon _”, „/ ad -”, „share-buttons”, „feedsportal.com”, „buysellads ”,„ holstee ”,„ musictapp ”,„ / ad _ ”,„ / button / ”,„ donate.png ”,„ / spons / ”,„ googlesyndication.com ”,„ / pagead ”,„ / adx ”,„ asset / feed-fb ”,„ asset / feed-tw ”,„ feedburner.com/~ff","gstatic.com","feedsportal.com ”]; 

Wyjęcie “podarować” przycisk z jakiegoś powodu wydaje się szczególnie wkurzający.

To linki do porwania

Dochodzimy do najpoważniejszego punktu, ponieważ Feedly nie tylko wycierał zawartość z Twojej witryny, ale także usuwał oryginalne przyciski społecznościowe i przepisywał metadane. Oznacza to, że gdy ktoś następnie udostępnił element, faktycznie tak będzie udostępnianie linku Feedly, a nie oryginalnego postu. Każdy, kto kliknie ten link, przejdzie bezpośrednio do Feedly.

Zrzut ekranu zeskrobanej zawartości z TheDigitalReader

Więc o co możesz zapytać? Gdy post staje się wirusowy, może on przynieść ogromną korzyść danej witrynie - zwiększając liczbę wyświetleń strony i przychody z reklam oraz poszerzając grono odbiorców. Feedly wprost wykradł tę konkretną korzyść z witryny, aby poszerzyć własną bazę użytkowników. Kod Feedly obejmował kontrole urządzeń mobilnych, które kierowałyby użytkowników na odpowiednią stronę sklepu z aplikacjami.

 function action (where) var actionName = "follow"; var url = "http://feedly.com/#" + encodeURIComponent („subskrypcja /” + feedInfo.id); if (/iPhone|iPad/i.test (navigator.userAgent)) actionName = "install"; url = "http://itunes.apple.com/us/app/feedly/id396069556";  else if ((/android/i.test (navigator.userAgent)) actionName = "install"; url = "market: // details? id = com.devhd.feedly";  _gaq.push (['_trackEvent', bucket (), actionName + "." + gdzie, feedInfo.id]); window.setTimeout (function () document.location.href = url;, 20); window.event.cancelBubble = true window.event.stopPropagation (); window.event.preventDefault (); 

Nie było “po prostu ułatwiając przeglądanie artykułu” - kradł ruch, prosty i prosty. To naprawdę nie jest fajne.

Ich pierwsza poprawka: A Hardcoded Exclusion List

Kiedy Digital Reader po raz pierwszy złożył skargę do Feedly, ich odpowiedzią było ponowne zakodowanie Javascript w celu włączenia Lista wykluczeń. Dosłownie dodali zaznaczenie do każdego linku Feedly, aby sprawdzić, czy był to element z Czytnika cyfrowego, a jeśli tak, aby ominąć przejęcie strony.

 var siteExcludePatterns = ["/ TheDigitalReader /"]; funkcja powinnaExExludeSite (url) 

Jest to oczywiście absolutnie niedorzeczny sposób - jeśli planują dodanie do tej listy z upływem czasu i więcej blogerów narzeka?

Nate z The Digital Reader odpowiedział:

skąd bierzesz się, domagając się, abym zrezygnował z twojego porwania? To tak, jakby powiedzieć, że powinienem poprosić kogoś, żeby przestał mnie bić w portfel na twarz. A jednak uważasz, że to rozsądne?

Druga poprawka: szybki hack do obejścia całego kodu

Po tym, co mogę jedynie założyć, że przytłaczająca liczba skarg, które nastąpiły, dostosowała filtr przechwytywania w następujący sposób:

 if (kind == "częściowo" || shouldExcludeSite („http://www.techmeme.com/131202/p30#a131202p30") || true) document.body.innerHTML = ""; document.location.href = "http://www.techmeme.com/131202/p30#a131202p30"; 

“Częściowy” odnosi się do zeskrobanej zawartości jako pełnego lub częściowego kanału - nie ma sensu przechwytywać kanałów, które mimo wszystko publikują tylko fragment. Przypuszczalnie ta funkcja zaczęła się jako jedyna kontrola, która miała miejsce przy wyborze, czy wysłać użytkownika do oryginalnej witryny, czy nie. Po tym można zobaczyć pierwszą poprawkę, która wywołuje funkcję sprawdzania, czy ta witryna znajduje się na liście witryn, które zrezygnowały; ale potem widzimy ich ostateczną poprawkę -

 || prawdziwe.

Jeśli masz jakieś doświadczenie w programowaniu, rozpoznasz szybki hack, który mówi “następujący kod zawsze będzie uruchamiany”, i zwykle jest używany tylko podczas debugowania. Jeśli którykolwiek z tych 3 warunków jest spełniony (pierwsze dwa nie mają już znaczenia), Feedly natychmiast przekierowuje użytkowników do oryginalnej witryny.

I to właśnie teraz. Czego się nauczyliśmy?

Zasadniczo Feedly starał się stworzyć coś w rodzaju uproszczonej lektury, ale sposób, w jaki to zrobili - przepisywanie linków w celu propagowania własnej usługi poprzez kolejne udostępnienia społecznościowe był dość cholernie obrzydliwy. To nie jest jedyny zły ruch, jaki ostatnio zrobił Feedly - w zeszłym miesiącu zaczęli wymagać logowania na kontach Google+ (po sprawdzeniu, jak dobrze działa logowanie Google+ dla sekcji komentarzy w YouTube, teraz wyczyszczonej, dzięki uprzejmości Google+, sekcja komentarzy w YouTube teraz Uporządkowane, dzięki uprzejmości Google+ Google oczyściło YouTube za pomocą nowego systemu komentowania opartego na Google+. Teraz zobaczysz najbardziej uprzywilejowane komentarze, od osób z Twoich kręgów Google+ i od właściciela filmu. , ale to też zostało szybko cofnięte. Lekcja jest taka - możesz zacząć szukać alternatywnego czytnika kanałów. Czytnik Google jest już blisko: przygotuj się z tych alternatywnych czytników RSS. Czytnik Google jest blisko: przygotuj się z tych alternatywnych czytników RSS. Czytnik Google nie działa. Do lipca główna internetowa usługa RSS zostanie zamknięta na zawsze, pozostawiając użytkownikom samodzielne znalezienie zastępcy. Jeśli szukasz ekwiwalentu Google, to tylko…, chyba że już przyłapano Cię na zapłacie 99 USD za konto Pro.




Jeszcze bez komentarzy

O nowoczesnej technologii, prostej i niedrogiej.
Twój przewodnik w świecie nowoczesnych technologii. Dowiedz się, jak korzystać z technologii i gadżetów, które nas otaczają każdego dnia i dowiedz się, jak odkrywać ciekawe rzeczy w Internecie.