Obțineți o placă de alimentare cu profil invision. Hack competiție: o modalitate ușoară de a provoca DoS în IPB. Felicitări participantului la concurs

A apărut o eroare a bazei de date pe forumul Invision Power Board (IPB), în urma căreia forumul a început să încetinească destul de decent. Tabelul ibf_profile_portal_views s-a dovedit a fi deteriorat și este necesar să verificați tabelele. Pe forum este afișat după cum urmează: nu vă puteți autentifica în profilul de utilizator:

De asemenea, forumul nu afișează statistici privind vizitatorii:

Accesați Centrul de administrare IPBoard și priviți proprietățile sistemului:

Accesați secțiunea: Asistență > Diagnosticare > Stare sistem > Prezentare generală a sistemului > Verificați structura bazei de date.

Găsim eroarea: ibf_profile_portal_views. Faceți clic aici pentru a repara tabelul sau puteți executa manual următoarele interogări.
- ALTER TABLE ibf_profile_portal_views ADD views_member_id int(10) NOT NULL implicit „0”.


Atenție: S-au găsit erori. Au fost detectate erori în baza de date. Și pentru a le remedia, faceți clic pe linkul: Vrei să încerci să repari totul automat?


Și vizavi de tabelul ibf_profile_portal_views (profil și numărul de vizualizări) obținem un steag verde:


Dar după ce vă deconectați și vă conectați în zona de administrare, eroarea apare din nou. Deci, accesați Asistență > Management SQL > Instrumente > Instrumente de gestionare SQL.


Și faceți clic pe tabelul ibf_profile_portal_views.

Citim informatia. Rezultatele interogării manuale: Nu se găsește fișierul: „ibf_profile_portal_views” (errno: 2, apoi introduceți în câmpul Run:
CREATE TABLE ibf_profile_portal_views (
views_member_id int(10) NOT NULL implicit „0”
);
Și faceți clic pe butonul: Executați o nouă solicitare.


Eroarea s-a schimbat în: Tabelul „ibf_profile_portal_views” există deja. Aceste. mă împiedică să creez un tabel nou, deoarece acesta există deja.


Să încercăm următoarea opțiune: reparați tabelul ibf_profile_portal_views;

Aceeași eroare atunci când lucrați cu baza de date este afișată atunci când încercați să ștergeți un utilizator prin intermediul centrului de administrare (deși acest lucru nu interferează cu crearea unui utilizator, precum și cu mutarea acestuia între grupuri).


Funcția acestui tabel este următoarea - vizualizările profilului utilizatorului sunt acumulate acolo, apoi sunt numărate și actualizate într-un alt tabel, iar acest tabel este șters.
Pentru a lucra cu baza de date, puteți folosi fie Sypex Dumper, fie phpMyAdmin, o aplicație web open source scrisă în PHP și care este o interfață web pentru administrarea SGBD-ului MySQL. PHPMyAdmin vă permite să administrați un server MySQL printr-un browser, să rulați comenzi SQL și să vizualizați conținutul tabelelor și bazelor de date. Aplicația este foarte populară în rândul dezvoltatorilor web, deoarece vă permite să gestionați DBMS-ul MySQL fără a introduce direct comenzi SQL, oferind o interfață ușor de utilizat.

După părerea mea, în calitate de administrator de site, nu este o informație personală. În plus, această informație se află în multe locuri în afară de profilul tău. Se afișează în subiectele forumului, în pop-up-ul utilizatorului, definește ce permisiuni aveți etc. Ascunzându-le așadar pe profilul tău există un fals sentiment de confidențialitate.

Pentru mine pur și simplu nu are sens să introduci un fals sentiment de securitate prin „ascunderea lucrurilor în profilul meu” atunci când tot ceea ce pui în profilul tău pe un forum comunitar este prin natura sa public tuturor celor din comunitatea respectivă.

Cu alte cuvinte: pe Facebook profilul tău este totul despre tine. Într-o comunitate, profilul tău este despre ceea ce ai făcut în acea comunitate. Este punctul de vedere opus.

Cred că părerea ta despre profilurile forumului este învechită. S-ar putea să se aplice pentru mai multe forumuri, dar pretindeți că sunteți o soluție de întreprindere, așa că asta mă adresez. Site-ul meu ar putea fi cartofi mici, dar devine unul dintre cei mai populari din nișa sa.

Profilurile de pe site-ul meu au mult potențial. Dar pentru că membrii mei sunt un amestec de profesioniști din nișa mea din industria și consumatori/bricolatori care nu sunt, puterea profilurilor mele de membri în ansamblu poate fi serios diluată cu informații diverse care nu au nimic de-a face cu industria mea , de exemplu, cei 2 membri ale căror pagini de profil le folosesc pentru a-mi ilustra punctul de vedere.

Acest utilizator, MarmoMan, este un profesionist în domeniul său. Informațiile pe care le furnizează sunt relevante pentru industrie și pot fi folosite ca un fel de listă de afaceri. Oricine vizitează site-ul poate să-și vadă profilul și să-și vadă statutul în industrie, istoricul muncii și realizările și să-l contacteze în diferite moduri care pot fi foarte benefice pentru el. Acest tip de profil este un atu pentru site-ul meu.

Acest utilizator, arrowpawn, este un consumator care a venit la noi despre problemele de pardoseală pe care le avea, a primit răspunsuri și nu a mai revenit de atunci informații care nu sunt legate de industrie în fila Despre mine, există informații de contact, inclusiv un link către un site web, în ​​fila Informații de contact Acest lucru nu este bun pentru site-ul meu și este considerat spam - chiar dacă sunt o companie legitimă profitat de dizabilitate pe care o am pentru a face anumite informații de profil și anumite grupuri de utilizatori ascunse de păianjeni de căutare și non-membri.

IPS4.x are un mare potențial de a transforma paginile de profil într-un atu pentru multe forumuri. Ar putea avea capacitatea de a adăuga câmpuri relevante pentru focalizarea site-ului, de a activa și dezactiva confidențialitatea pentru anumite câmpuri, de a face unele/toate câmpurile controlabile de către administrator și de a adăuga SEO la profil, printre alte opțiuni. zonele site-ului ar trebui să includă doar informațiile pe care administratorul le consideră importante pe o categorie de utilizatori și, de asemenea, să permită o anumită configurare a utilizatorului.

Ideea pe care vreau să-ți spun este că tot ceea ce este pus într-un profil NU trebuie să fie public, mai ales dacă vrei să ai mai mult control asupra conținutului relevant al site-ului tău. Și nu sunt unul care va compara această caracteristică cu Facebook. Speranța mea este că va fi incomparabil cu orice alt produs disponibil pe forum. Aveți resursele, abilitățile și potențialul de a dezvolta profiluri IPS în mai mult decât o simplă funcție de forum.

Invision Power Board (abreviat și ca IPB, IP.Board) este una dintre cele mai populare soluții din lume pentru crearea de forumuri. Acest software este dezvoltat de Invision Power Services, Inc.

Sistemul a fost creat folosind tehnologii HTML, PHP, JS, AJAX și folosește MySQL ca server de baze de date (în plus, există suport pentru alte servere de baze de date, cum ar fi Microsoft SQL Server și Oracle). IPB este un software plătit.

În ciuda faptului că Invision Power Board este un produs plătit, există un număr mare de comunități dedicate susținerii și modificării acestuia. Majoritatea modificărilor și stilurilor de design dezvoltate de aceste comunități sunt gratuite și se pot descărca gratuit. Cea mai mare comunitate rusă este IBResource.ru.

Versiunea forumurilor IPB 1.3 este cea mai recentă versiune distribuită gratuit a motorului și este încă permisă de IPS pentru utilizare, deși nu mai este susținută de dezvoltatori și accesul la descărcare pe resursa oficială a fost deja întrerupt. În ciuda naturii învechite a acestei versiuni a forumului și a prezenței unor găuri de securitate cunoscute în ea, mulți oameni încă o folosesc și nu își exprimă nicio dorință de actualizare. IPS a continuat să lanseze actualizări de securitate până când versiunea 2.1 a fost anunțată pentru dezvoltare în 2005, după care a încetat să mai suporte această versiune a forumului. Pe unele site-uri, puteți vedea chiar și acum link-uri către actualizările de securitate pe care le lansează, precum și actualizări care permit script-ului forumului să funcționeze în PHP5. Aceste actualizări nu sunt acceptate de IPS. Versiunea 1.3.1 a fost shareware pentru o perioadă de testare, care putea dura atât timp cât se dorește. După această versiune, Invision Power Services a început să-și lanseze produsele sub o licență comercială.

Avantaje

  • Instalare in doar 3 minute. Componentele de instalare automată permit aproape oricărui utilizator să instaleze un forum în doar câteva minute. Procesul nu necesită cunoștințe speciale: sistemul în sine va efectua toate operațiunile, solicitându-vă doar datele necesare. Da, nu este nevoie de discuții inutile - o licență IPB oferă fiecărui proprietar dreptul de a comanda instalarea gratuită a forumului său.
  • Suport tehnic în limba rusă. Deținătorii de licență IP.Board au acces la suport tehnic în limba rusă. În plus, specialiștii în servicii nu vorbesc doar limba ta maternă, ci sunt și dezvoltatorii „nativi” ai forumului. Aceasta înseamnă că nu trebuie să le explicați simptomele problemelor, precum și posibilele soluții. Stăpânirea perfectă a subiectului vă permite să efectuați toate lucrările cu forumul fără a pierde timpul și efortul clientului.
  • Orientare socială. Pentru a face forumul un mediu cu drepturi depline pentru comunicare, pentru a oferi utilizatorilor oportunități suplimentare de a întâlni oameni și de a stabili conexiuni - acest lucru este facilitat de atributele interacțiunii sociale ale participanților la forum. Utilizatorii IP.Board pot schimba cu ușurință diferite conținuturi între ei, pot crea profiluri personale, își pot face prieteni adăugându-i la cercul lor.
  • Interfață Web 2.0 ușor de utilizat. Niciodată nu poate fi prea mult lucru bun. Pentru un confort și mai mare, sistemul IPB utilizează tehnologii moderne Web 2.0. Datorită acestui fapt, utilizarea funcțiilor de bază necesare ale forumului este ușoară și intuitivă. Și, deoarece este simplu, înseamnă că participanții sunt scutiți de „preludiul” tehnic plictisitor al comunicării.
  • Flexibilitate. IPB are o mulțime de opțiuni pentru personalizarea comunității și opțiunile de personalizare. Flexibilitatea sistemului vă permite să integrați forumul cu soluții terțe fără prea mult efort, precum și să schimbați orice element al interfeței (design, adăugarea de noi funcții).
  • Loialitatea marcii.„Consumatorul nu este un prost, el este soția ta.” Un forum interesant, o organizare bine gândită a comunității - toate acestea funcționează pentru imaginea companiei și sporesc loialitatea clienților față de brand. Utilizatorii vor aprecia cu siguranță confortul mediului creat pentru comunicare: posibilitatea de a discuta despre brand cu alte persoane, de a face schimb de opinii, de a răspunde și de a interacționa cu conducerea companiei în sine.
  • Costuri reduse. Comunitatea forumului acționează ca o consultare online 24 de ore pe zi, reducând semnificativ numărul de apeluri către serviciul dumneavoastră de asistență tehnică. Din punct de vedere psihologic, este mult mai simplu și mai ușor pentru utilizator să caute ajutor pe forum: participare prietenoasă, opinii și sfaturi de la specialiști independenți - ca urmare a comunicării, nu numai toate problemele sunt rezolvate, ci și emoțiile negative din cauza dificultăților întâmpinate sunt îndepărtat.
  • Cercetare de marketing. Sistemul IP.Board vă permite să utilizați forumul ca instrument de cercetare de marketing. Studierea evaluărilor și opiniilor clienților dvs., efectuarea de sondaje, testarea - capabilitățile tehnice largi ale forumului vă permit să aplicați diverse scheme de cercetare.
  • Multitasking. Flexibilitatea configurației sistemului vă permite să utilizați IP.Board pentru a atinge diverse obiective. Pe lângă instrumentul tradițional de comunicare, unele companii au organizat un sistem de management al proiectelor bazat pe forum. IP.Board servește atât ca sistem intern, cât și ca sistem extern de servicii pentru clienți. Datorită capacității de a configura profund și individual drepturile de acces, puteți adapta munca forumului chiar și la cele mai complexe și specifice sarcini.
  • Adecvarea prețurilor. Condițiile de achiziție ale produsului software IP.Board și planul tarifar dezvoltat vă permit să găsiți cea mai bună opțiune pentru rezolvarea sarcinilor atribuite forumului. Plătești pentru ceea ce folosești de fapt, pentru ceea ce ai nevoie cu adevărat.
  • Module suplimentare. Puteți extinde funcționalitatea sistemului IP.Board folosind aplicații oficiale suplimentare (galerie, blog, modul arhivă fișiere). Soluțiile gata făcute vă scutesc de dezvoltarea și modificarea independentă a funcționalității. Modulele suplimentare sunt pe deplin compatibile cu sistemul și folosesc un singur spațiu comunitar, ceea ce le permite să fie instalate cu un singur clic, fără a necesita cunoștințe și abilități speciale. Aplicațiile suportă și lansarea de noi versiuni, iar întreținerea acestora este inclusă în pachetul general de servicii de suport tehnic pentru forum.
  • Administrare atentă a forumului. Eficacitatea oricărei comunități este facilitată de o „conducere” competentă. Instrumentele de management integrate în IP.Board vă permit să creați un sistem flexibil de administrare și moderare cu diferențierea necesară a drepturilor. Managementul forumului include o gamă largă de capabilități: de la monitorizarea conținutului până la crearea unui centru de diagnosticare care vă permite să mențineți forumul, să monitorizați statisticile și să verificați sistemul pentru posibile erori.

Posibilitati

  • Instalare simplă, intuitivă și rapidă
  • Disponibilitate de drivere pentru diferite tipuri de baze de date: MSSQL, Oracle, PostgreSQL
  • Disponibilitate totală pentru lucru imediat după instalare
  • Grupuri și Multi-grupuri pentru utilizatori
  • Profil de utilizator modern
  • Prieteni

Există o mică vulnerabilitate în motorul forumului IPB. Puteți să-l troleați pe administrator și, în același timp, să-i ucideți forumul pentru câteva zile (verificat personal pe două forumuri).

Felicitări participantului la concurs

Acest text a fost depus la un concurs de autori pe care l-am lansat în primăvară. Am sortat un număr mare de materiale trimise, am rezumat rezultatele și am premiat câștigătorii. Autorul acestei note a primit un premiu - un abonament de trei luni la Hacker. Felicitări!

Să ne dăm seama pas cu pas cum funcționează.

  1. Mai întâi trebuie să te înregistrezi pe forum pentru a putea posta.
  2. După înregistrare, creați un subiect „gunoi” în care moderatorii se uită cu greu sau lăsați o postare într-unul dintre aceste subiecte. Conținutul unei postări sau al unui subiect ar trebui să fie imens. Unii administratori fac greșeli atunci când configurează serverul, permițând utilizatorilor să trimită postări cu o lungime nelimitată a textului. Personal, am aplicat hash cuvântul DDoS în SHA-512 și am copiat hash-ul în formularul de trimitere a postării până când browserul a blocat câteva secunde de cantitatea de text inserată în pagină.
  3. Trimiterea unui nou subiect sau postare. Motorul este implementat într-o manieră neglijentă, iar postările lungi nu sunt scurtate cu posibilitatea de a le extinde făcând clic pe un buton. Iar rezultatul unor astfel de postări este gestionat de PHP, nu de JS pe partea clientului. Drept urmare, obținem o pagină uriașă cu câteva milioane de caractere care sunt încărcate sincron de pe server.
  4. Lansăm un atac DDoS pe un subiect cu o postare uriașă. Deoarece toate solicitările merg direct către PHP și de la acesta către baza de date, site-ul va eșua foarte repede cu eroarea 500 Internal Server Error, iar apoi cu 504 Gateway Timeout (deoarece baza de date, chiar și pe un VPS, nu va putea pentru a servi o postare atât de uriașă atât de repede, așa că vorbiți despre găzduire partajată) și nu se va putea ridica în curând, deoarece interogările la baza de date se vor bloca și vor aștepta un răspuns de la server și baza de date.
  5. Puteți ascunde atacul de la moderatorii deosebit de proști folosind un truc cu urechile. IPB are un modul „Activitate” (Descoperiți în versiunea în limba engleză a motorului). Acesta este un feed care stochează istoricul postărilor recente. Deci, pentru a distrage atenția moderatorilor (care pot detecta un subiect, îl pot șterge și interzice contul), trebuie să începeți imediat să inundați pagina de activitate după trimiterea unei postări de gunoi. După ce a văzut jurnalele, administratorul de sistem va crede că atacul este asupra fluxului de mesaje și nu va putea detecta rădăcina problemei - subiectul pe care l-am creat, care, apropo, se va agăța complet nerestrâns pe pagină. . Singurul lucru pe care îl poate face este să închidă feedul de la utilizatorii neînregistrați. Și chiar și atunci aceasta este o decizie îndoielnică, de care suferă utilitatea.
  6. Câteva ore de atac DDoS intens pe o pagină nedorită și literalmente în câteva zile (cel mult săptămâni) baza de date a forumului se va prăbuși pentru totdeauna. Nu, nu va cădea pur și simplu, ci va fi rupt fără reparații. Nu sunt sigur despre ce este vorba sau de ce se întâmplă, dar se întâmplă. Astfel, nu numai că puteți pune cu ușurință un forum pe un server dedicat în câteva clicuri, ci și să îi distrugeți baza de date, care va fi extrem de dificil de restaurat fără o copie de rezervă.

De asemenea, puteți umple spațiul pe disc cu jurnalele. De obicei, închiriază un VPS cu un disc SSD de 10–20 GB și au voie să încarce imagini pe forum numai din resurse terțe. Deci, este foarte ușor să înregistrați jurnalele - trebuie să utilizați același hash lung în numele subiectului. De asemenea, puteți crește ușor efectul folosind referrere, inserând același hash în ele.

Acesta este un mod interesant de a-l determina pe proprietarul forumului IPB să se gândească la trecerea la un alt motor.

Competiția continuă

Am decis să extindem competiția și să o transformăm într-o promovare permanentă. Trimițându-ne o descriere a unui hack, un sfat util sau o descriere a unui program necunoscut, puteți obține în continuare un abonament pentru o lună, trei luni sau, dacă încercați, pentru un an.