Author Archives: Trimbitas Sorin

WebSec – Same-Origin Policy (SOP)

Este un concept important din modelul de securitate al aplicatiilor web. Adica .. un browser permite scripturilor dintr-o pagina X sa acceseze datele dintr-o pagina Y DOAR daca ambele au aceiasi origine (hostname, port, protocol).

Exemplu de ce s-ar intampla daca nu ar exista SOP .. intri pe acest site, da? Eu scriu un script care ar face un request POST la facebook.com si in numele tau as scrie “Vedeti site-ul lui Sorin!”. Ar fi misto nu? :))

Binenteles .. SOP se aplica doar requesturilor din scripturi si fonturilor. Fisierele “statice” (imagini, media, CSS, alte scripturi JS incarcate prin <script> etc) sunt exceptate.

Din cauza acestor restrictii au aparut metode valide pentru a face bypass:

  • “document.domain” property din javascript
  • Cross-Origin Resource Sharing (CORS)
  • Cross-document messaging via “postMessage” din javascript, un exemplu frumos: http://jsfiddle.net/bmknight/A7YfK/
  • JSONP
  • WebSockets

Despre ele in urmatoarele articole 🙂

Bibliografie:
https://en.wikipedia.org/wiki/Same-origin_policy
https://tools.ietf.org/html/rfc6454

WebSec – Cookies

Cateva lucruri/concepte:

  • Acces cookieuri

Sa definim niste termeni:
Avem domain.com – domeniul de baza/root
test1.domain.com si test2.domain.com – subdomenii nivel 1 ale domain.com
a.test1.domain.com – subdomeniu nivel 2 al test1.domain.com

1. Un cookie setat pe domeniul principal domain.com este accesibil TUTUROR subdomenilor sale, indiferent de nivel
2. Un cookie setat pe test1.domain.com este accesibil TUTUROR subdomenilor sale, indiferent de nivel (ca mai sus) DAR nu este accesibil celorlalte subdomenii de pe acelasi nivel cu el insusi (deci test2.domain.com nu poate citi acest cookie).
3. O aplicatie poate seta cookieuri: (sub)domeniului pe care ruleaza, tuturor subdomeniilor sale SI parintelui sau.
Deci: de pe test1.domain.com putem seta cookieuri: test1.domain.com, domain.com si a.test1.domain.com

 

  • Flaguri
  1. secure … accesibile doar prin https
  2. http-only .. inaccesibile din limbaje client-side (javascript)

CTF – Pregatire sistem

M-am tot gandit (in timp ce mergeam pe strada :)) ) si cred ca, solutia ideala momentan, este o masina virtuala. De ce? Pai … o poti muta de pe un laptop pe altul foarte usor, instalezi virtualbox, copiezi fisierul si asta e tot + poti face backup/restore extrem de usor (e un singur fisier totul, nu?).

Ca sistem de operare am ales Lubuntu (https://lubuntu.net/downloads/) .. mult mai putine resurse necesare decat Ubuntu. De ce nu o versiune mai de “doamne-ajuta”? Pai .. sunt pline de tot felul de tool-uri inutile mie (sunt interesat de partea de web, nu RE, crypto and so on) + multe alte motive ce tin de incredere.

Ca browsere folosesc Chrome/ium pentru partea de browsing normala si Firefox pentru a-l folosi cu Burp (https://portswigger.net/burp/communitydownload) + Firebug. 2 browsere sunt mai ok pentru ca nu mai stai sa tot activezi/dezactivezi setarile de proxy + nu-mi place sa am add-onuri (stiu, sunt add-onuri pentru enable/disable proxy-uri).

O sa tot adaug chestii instalate cu fiecare CTF la care particip, in functie de nevoi, nu doar asa sa am cat mai multe tool-uri 😛

!!! Orice sugestie e mai mult decat binevenita !!!

Securitatea web (WebSec)

Cred ca sunt pasionat de asa ceva de prea multi ani si nu am facut prea multe lucruri concrete pe partea asta. Da, m-am mai jucat la CTF-uri, pocked some random websites and so on dar .. nimic structurat cu adevarat. Mi-am propus ca de azi incolo sa fac minim un challenge pe saptamana si sa scriu aici cum l-am rezolvat. La inceput o sa fie banale dar, cu timpul, sper sa progresez incat partea de web din CTF-uri sa fie rezolvabila 🙂

Demonul din foaia de hartie

L-am cunoscut intr-un vis aberatie, nu pot scrie ca mi-a insuflat frica ci doar o teama de necunoscut, de a-l lasa sa-si faca vrerea …

Ma plimbam prin gradina bunicilor destul de mind-less, eram purtat de viata ce o vedeam in jur, si pas cu pas, ma minunam de toate. Imi placea senzatia asta de liniste si de plutire si de cedare a controlului …
Intr-o clipita EU (observatorul) am simtit o prezenta, una in plus fata de cate ar fi trebuit sa fie in vis, simteam curiozitatea dar in acelasi timp si rautatea (define evil!, define brat!), nu stiu sigur daca era rautate cu adevarat sau nesimtirea de a ma tulbura din propriul meu vis, ohh .. I like a good game … am preluat controlul imediat si m-am reintregit. Starea a fost diferita de alte dati, am simtit impotrivire din partea mea insumi si nu, nu mi-a placut deloc asta. Aveam puteri “magice” acum, puteam altera totul mai putin piatra pe care nu am vazut-o venind si care m-a lovit in frunte, dreapta sus .. sari sange de acolo, un siroi mic se prelinse in ochi si eu cazui ametit in fund, WTF?! E visul meu! M-am trezit din el si parca si in lumea fizica simteam durerea, nu atat de mare dar destul incat sa o constientizez, uff .. aud zgomot de sticla lovita, sticlele de cidru de pe calorifer, nimeni in zona aia, ma intorc cu spatele la Adina si ma intorc in vis.
Ma ridic de jos (da, de jos, nu, nu e o greseala, fizica e diferita, ohh da), incerc sa stau in aer ca sa vad zona mai bine dar nu pot, nu mai pot face nimic “magic”, hoho .. o entitate interesanta. Eu am intotdeauna backup-ul de a ma intoarce inapoi in “realitate” si a iesi din vis fortat. Ea poate ca nu :)) .. ce am de pierdut? Nimic!

Explorez gradina .. nimic, sopronul nimic, curtea la pasari/animale nimic .. hmm .. dau sa intru in casa .. usa inchisa, dau sa deschid usa cu forta .. nimic, bun … sparg usa cu un topor gasit in sopron .. dau sa intru .. nu pot, hmm .. ca un camp de forta bloca usa, nu pot sa-l clintesc de aici .. incerc geamurile .. la fel toate. Hmm … ies din vis, ma intorc pe cealalta parte, ma uit la ceas 03:22 . stau, ma gandesc .. ma intorc in vis. Intru in sopron, urc in pod, trec in podul bucatariei de vara, in podul casei … haha, a mers . sunt in casa, deasupra camerelor cel putin .. seamana cu un CTF .. pas cu pas :)) Ma uit in camera bunicilor .. e bunicul, se pregatea sa plece afara. .. ma uit distrat la el cum o sa dea cu nasul in campul de forta .. dar .. a trecut prin el direct, cred ca si-a uitat ceva .. se intoarce dar nu mai poate sa intre, se resemneaza din prima si isi ia bicicleta si pleaca ….

Cobor in casa si cand ating solul simt o adiere usoara, tot mai puternica si tot mai puternica .. ma speriu putin .. sa ma deconectez? sa mai stau? hmm .. pana m-am mocait .. hainele mi-au luat foc, ma tavalesc repede si le sting, pielea s-a regenerat instant .. deci mai am ceva puteri?! sau a fost doar o iluzie acest foc? Fug inspre camera de oaspeti ca sa strabat toata casa … prima camera, ok, holul ok, a doua camera .. ce sa vezi? O foaie de hartie ce parea un contract din cel din filmele cu Diavolul si vanzarea sufletului avea un colt indoit si naviga pe o tableta. M-a ingrozit instant stiind ce inseamna asta … acces la cunostiinta de aici la cateva touch-uri distanta. Era atat de absorbit incat nici nu m-a vazut, am luat un obiect ca o furculita in mana dreapta si m-am strecurat langa pat, gata sa sfasii obiectul posedat … oare avea ochi? oare cu ce simtea? Pe foaie era o litera foarte frumoasa, stilizata, un “O” probabil si aceea parea sa nu se miste cu unduirile foii ..

Am sarit inspre el cu intentia de a rupe foaia si l-am atins, sau cred ca l-am atins .. in momentul impactului corpul mi s-a oprit in aer si m-am invartit in jurul axei coloanei mele si am ajuns cu spatele in jos si am cazut puternic pe covor.

“Te asteptam” mi-a spus, “Dar nu am timp de tine acum!” si m-a aruncat in afara camerei, pe hol. M-am speriat rau si am iesit din vis, am simtit mirosul pielii ei si m-am uitat pe geamul cu gratii tamp apoi am reintrat in vis .. am urcat in pod pana deasupra camerei si am dat la o parte scandurile, incet incet, apoi cu o cazma am rupt intr-o fractiune de secunda tavanul si in aer am reusit cu cazmaua sa sfasii foaia destul de puternic, un raget fara sunet .. am amutit de frica, ma luase cred ca in ambele parti, tremuratul pe sira spinarii si iarasi am fost aruncat in afara camerei, dar de data asta parea diferit, mult mai bland.

“Acum mi-ai atras atentia! VREAU si eu in lumea in care tot dispari!” .. spuse din usa camerei si se indrepta spre mine .. imi venea sa rad cum arata spintecat asa .. o foaie venind spre tine :)) Cat de ciudat pare? Nu putea sa posede un ceainic sau orice altceva? :)) L-am lasat sa se apropie si sa tot ameninte vrute si nevrute, m-am prefacut speriat si cand a fost prea aproape .. furculita … franjuri si urlete ce pareau de durere …. nu m-am oprit pana nu erau doar bucatele mici de hartie ce pareau se se aproprie iarasi una de alta, ca si cum ar fi vrut sa se lipeasca. M-am ridicat repede si am luat un borcan, am pus in partea de jos a lui, pe interior ceva prostii ce ardeau si i-am dat foc, apoi am pus acel ochi inauntru ca sa arda.
A aparut si copilul cel mic, Filipoiul, parea exact la fel ca in realitate si i-am spus sa aduca toate bucatelele de hartie una cate una si .. a inteles, el le-a adus si eu le puneam una cate una in foc … in centru se facuse ca o bila de plumb topit .. dar eram plictisit deja .. ma trezesc .. ma uit la ceas .. 02:25 si a aparut baiatul cel mare in camera in secundele urmatoare …

Cioara de pe gard + Muzica – Still Corners – The Message

Uneori simt ca nu pretuiesc ce am deja doar ca o idee/concept pare mai interesant la prima vedere. E o frica uneori ca vazand ceva ce pare ideal sa ajung sa idealizez si mai mult in detrimentul, nu al stabilitatii (niciodata nu am cautat stabilitate pe niciun plan, EU cel putin) ci al lucrurilor si persoanelor la care chiar tin.  Vorba unei amice .. online si chiar si in viata reala .. toti par sa atinga perfectiunea, fara duritatea vietii, fara durere, fara nimic negativ .. doar idealuri si sperante si vise ….

 

Horn effect / Efectul corn (al Diavolului)

Este o forma de bias cognitiv ce cauzeaza ca perceptia noastra asupra altei persoane sa fie influentata nejustificat (doh! e un bias doar :P) de o singura trasatura negativa a acesteia.

Un exemplu: un observator este mult mai probabil sa presupuna ca o persoana neatractiva fizic este mai putin morala decat una care il atrage fizic, chiar daca nu exista o corelatie intre frumusetea fizica si moralitate.

Bibliografie:
1. https://en.wikipedia.org/wiki/Horn_effect

Spotlight effect / Efectul sub lumina refletctoarelor

Este fenomenul in care tindem sa credem ca suntem remarcati mai mult decat suntem cu adevarat. Din cauza ca fiecare dintre noi suntem centrul propriei lumi tindem sa uitam ca nu suntem centrul lumii celorlalte persoane.

Aceasta tendinta este cu atat mai proeminenta cu cat facem un lucru atipic noua sau societatii in care traim. Exemplu .. in Romania .. daca ar fi sa umblu descult prin centrul orasului, as avea impresia ca TOATA lumea se HOLBEAZA la mine.

Bibliografie:
1. https://en.wikipedia.org/wiki/Spotlight_effect

Totul e energie .. dar conteaza asta?

Sunt un prost. Niciodata nu am inteles fizica/mecanica/teoria cuantica, niciodata! Dar sa spunem ca e reala si totul e energie si aici. Perfect!

Problema este ca ma simt idiot cand deja am avut a treia discutie in 3 zile cu persoane total diferite si toti imi spun de asta ca si un adevar absolut: “totul e energie si noi o putem manipula dupa bunul plac”.
Sa zicem ca e asa .. dar .. ramane intrebarea mea de idiot .. why the fuck you aren’t changing everything, at least inside you? si .. sare si partea de programator si gandeste tamp .. sa zicem ca au dreptate si chiar asa si e (nu, nu cred ca Pamantul e plat! :)) ) .. partea aceea la nivel atat de mic .. are nevoie de functii lowest-level extreme .. sigur sunt accesibile? Vreau sa vad un exemplu concret. Un om ce se uita la mine si face sa-mi scada barba (daca scriam “sa-mi creasca” .. avea dreptate .. imi creste continuu la nivelul ala microscopic :)) ).

Make me understand if you know more. Pretty please!

VPN – Panaceul securitatii?

Sa incepem cu inceputul … ce este acest VPN? Simplu .. o retea privata virtuala.
Adica (spus simplu)? Adica avem un dispozitiv A in reteaua X si un altul B in reteaua Y. Daca folosim un VPN dispozitivul A poate comunica cu dispozitivul B ca si cum ambele ar fi fizic in reteaua Y (sau X, depinde cine/unde face conexiunea).

Practic .. eu sunt freelancer, lucrez cu clienti care au anumite servicii deschise doar in reteaua lor interna. Ok? Dar eu lucrez de acasa sau din cafenele sau din alte locuri, nu de la birou si am nevoie de acele servicii. Solutia pentru a ma conecta la ele se numeste VPN 🙂 Laptopul meu devine parte din reteaua lor interna din cauza asta si eu pot accesa totul ca si cum as fi in cladirea lor.

Pana aici totul e OK .. VPN-ul isi face treaba perfect (bine, bine .. nu exista perfectiune, .. isi face treaba BINE).

Dar asta a fost introducerea :)) Problema principala e ca sunt o multime de servicii VPN care toate promit MINCIUNI frumoase legate de securitate. O sa pun la screenshoturi la primele 2 rezultate ce apar pe google (toti mint, ma refer la cei ce au in marketing “security”!!)

 

De ce am scris ca ei mint? La nivel conceptual, in sensul serviciilor de mai sus, VPN-ul e de fapt la fel de bun ca orice proxy GRATUIT de pe hidemyass sau alte siteuri de gen. Care e diferenta intre un proxy gratis si un VPN pe bani atunci? Niciuna! Ahh ba da .. ramai cu 10 usd/luna in buzunar in plus :))

Am cautat pe net pentru acest articol mai multe cazuri cand providerii de minciuni servicii VPN au dat-o in bara public dar am dat de acest articol https://gist.github.com/joepie91/5a9909939e6ce7d09e29 pe care il sustin 100% asa ca nu are rost sa pierd vremea traducandu-l in romana cand toata lumea stie engleza deja 🙂
CITITI-L CU ATENTIE !

Bibliografie:
– https://computer.howstuffworks.com/vpn3.htm (de aici am luat prima poza)
– https://en.wikipedia.org/wiki/Virtual_private_network
– https://ro.wikipedia.org/wiki/Re%C8%9Bea_privat%C4%83_virtual%C4%83