1.usa.gov – როგორ იყენებენ ჰაკერები ამერიკული სამთავრობო საიტების სისუსტეს

Open Redirect არის ვებ აპლიკაციის სისუსტე, რომელიც ჰაკერს საშუალებას აძლევს მსხვერპლს მიაწოდოს სანდო ვებსაიტის ბმული, რეალურად კი გადაამისამართოს სახიფათო საიტზე. მთავარი საფრთხე, რომელიც მომდინარეობს ამ სისუსტისგან არის ფიშინგი. სისუსტის მოგვარების გზაა, რომ გადამისამართების ფუნქცია საერთოდ მოვხსნათ ვებსაიტიდან. მაგრამ თუ გვჭირდება – მაშინ გადამისამართება მომხმარებლის input-ზე საერთოდ არ უნდა იყოს დამოკიდებული.

სისუსტის უკეთ გასაგებად, წარმოვიდგინოთ, რომ არსებობს ვებსაიტი example.com. თუ ამ საიტს გააჩნია მოცემული სისუსტე, მაშინ ქვემოთ მოცემულ ბმულზე შესვლისას example.com-ის ნაცვლად, mikheiloninfosec.com-ზე შემოხვალთ.

http://www.example.com?redirect=mikheiloninfosec.com

Note: ამ ბმულში redirect არის მოცემული ვებ საიტის პარამეტრი, რომელსაც სხვ ასახელი შეიძლება ერქვას

რამდენიმე დღის წინ ბრაიან კრებსმა დაწერა, რომ ამ სისუსტისა და bit.ly სერვისის გამოყენებით, ჰაკერები ახერხებენ ისეთი ბმულების შექმნას, რომელიც სანდოდ გამოიყურება – რეალურად კი იუზერი გადაჰყავს საიტზე, რომელიც ან ფიშინგია ან მალვეარს ავრცელებს. ამაში ჰაკერებს ეხმარება ზოგიერთ ამერიკულ სამთავრობო საიტზე არსებული open redirect სისუსტე.

საქმე ის არის, რომ ბმულების დამოკლების სერვისი bit.ly ბმულებს, რომელიც მთავრდება .gov-ით ან .mil-ით გარდაქმნის ბმულად, რომელიც იწყება 1.usa.gov-ით.

მაგალითად ავიღე თეთრი სახლის საიტზე გამოქვეყნებული რიგითი სტატიის ბმული:

თავდაპირველი ბმული: https://www.whitehouse.gov/blog/2016/03/30/asked-and-answered-11-year-old-daughter-incarcerated-individual-shares-her-story

დამოკლებული ბმული: http://1.usa.gov/1VUpDQf

აღმოჩნდა, რომ 2012 წლის მონაცემებით 1.usa.gov ბმულების 15% მომხმარებლების სახიფათო საიტებზე ამისამართებდა. აღმოჩნდა, რომ თავად bit.ly და ამერიკის მთავრობის შესაბამისი სამსახურები ცდილობენ ასეთი ბმულების აღმოჩენასა და გადადგურებას, მაგრამ პრობლემის რეალური მოგვარება სისუსტის მქონე ვებ აპლიკაციების გამოსწორებაა.

სანამ Open Redirect სისუსტეებისგან თავისუფალი ინტერნეტი გვექნება, იქამდე შეგიძლიათ გამოიყენოთ Unshorten.it სერვისი, რომელიც Chrome ბრაუზერშიც შეგიძლიათ ჩაამატოთ extension-ად. დასატესტად გთავაზობთ ზემოთ მოცემული 1.usa.gov ბმული გადაამოწმოთ მართლაც თეთრი სახლის საიტზე გამისამართებდათ თუ არა.

 

Collusion – ვინ აგროვებს ინტერნეტში ინფორმაციას თქვენზე

როდესაც მომხმარებელი ინტერნეტში დაძრწის, ის თავის ინფორმაციას ძალაუნებურად აწვდის სხვადასხვა ვებსაიტებს. კონკრეტულად რა ინფორმაციას და რა მოცულობით აგზავნის – ეს უკვე მომხმარებლის ჩვევებსა და მისი ბრაუზერის setting-ებზეა დამოკიდებული. ამაზე უკვე მაქვს დაწერილი პოსტი. ისე კი, თქვენმა ბრაუზერმა ინტერნეტში შეიძლება დაარიგოს თქვენი IP მისამართი, რომელ ბრაუზერს (ქრომი, ფაიერფოქსი, ინტერნეტ ექსპლორერი. . .) ხმარობთ, რომელი ოპერაციული სისტემა (Windows, Mac OS, ლინუქსი. . .) გაქვთ, თქვენი ეკრანის ზომა და ა.შ.

როდესაც შედიხართ ერთ საიტზე, ცხადია, ამ საიტს აწვდით ინფორმაციას, მაგრამ თვითონ ამ საიტზე შეიძლება იყოს უამრავი პლაგინი (ფეისბუქის, google analytics-ის და ა.შ.), რომელთაც სხვადასხვა ფუნქციები აქვთ. შეიძლება თქვენს მიერ გაცემული ინფორმაცია გამოყენებული იქნას უბრალოდ სტატისტიკისთვის და სერვისის გაუმჯობესებისთვის (რომელ ბრაუზერს ხმარობენ მოცემულ საიტზე შესული მომხმარებლები), რეკლამისთვის ან იმის განსასაზღვრად, შესაძლებელია თუ არა თქვენთვის რაიმე ვირუსის შემოტყუება (თუ საიტზე ჩაგდებულია ვირუსი ვინდოუსის ოპერაციული სისტემისთვის და თქვენ ლინუქსით შეხვედით, ვირუსმა, შესაძლოა, არც კი სცადოს თქვენი კომპიუტერის დაინფიცირება).

რამდენიმე ხნის წინ ერთ extension-ს გადავაწყდი Google Chrome-სთვის, რომელსაც ეწოდება Collusion. ეს ექსტენშენი იძლევა გრაფიკულ გამოსახულებას, თუ რომელ საიტებზე გაიგზავნა თქვენი ინფორმაცია.

გადავწყვიტე ეს ექსტენშენი დამეტესტა. ამას გარდა, Collusion გარკვეულწილად Do Not Track ფუნქციის დატესტვის შესაძლებლობასაც იძლევა. ამ ფუნქციის მონიშვნის შემთხვევაში თქვენი ბრაუზერი ვებსაიტებს ეუბნება, რომ თქვენ ინფორმაციის მიწოდება არ გსურთ (თუმცა შესაძლებელია, რომ საიტების (სერვერების) ნაწილმა  უგულებელჰყოს Do Not Track და მაინც შეაგროვოს თქვენს შესახებ ინფორმაცია).

როგორ დავაყენოთ Collusion

Google Chrome-ით შევდივართ შემდეგ საიტზე: disconnect.me და გადავდივართ Tools მენიუში. შემდეგ კი ვაჭერთ წითლად მონიშნულ იკონკას:

Get_Collusion

ეს დააინსტალირებს ექსტენშენს თქვენს ქრომში. შემდეგ სასურველია, რომ გამორთოთ ქრომი და თავიდან შეხვიდეთ. ქრომის მარჯვენა ზედა კუთხეში ახალი იკონკა უნდა გაჩნდეს, რომელზე დაჭერის შემთხვევაშიც გამოჩნდება გრაფიკული გამოსახულება, თუ რომელმა საიტებზე მიიღეს თქვენი ბრაუზერიდან ინფორმაცია.

Collusion

აქვე უნდა აღინიშნოს, რომ ექსტენშენის ავტორთა მტკიცებით, მათი ქმნილება ინფორმაციას არსად არ აგზავნის. გრაფიკული გამოსახულებისთვის საჭირო ინფორმაციას ინახავს თქვენს კომპიუტერში.

დატესტვა და მისი შედეგები

თავდაპირველად გადავწყვიტე Collusion მეცადა ისე, რომ გამორთული იყო Do Not Track.

ქრომის მისამართის ზოლში ჩაწერეთ :

chrome://settings –> Show advanced settings. . . –> Privacy

Do_Not_Track_Switched_Off

ამის შემდეგ შევედი იმ ვებსაიტებზე, რომელზეც ჩვეულებრივ შევდივარ ხოლმე: youtube.com (logged in), facebook.com (logged in), bbc.com/football, wired.com, nationalgeographic.com, slashdot.org).

Websites_Browsed

შედეგი:

Tracked Sites

თითოეულ რგოლზე მაუსის მიყვანისას გამოჩნდება ვებსაიტის სახელი.

ლურჯი შარავანდედით შემოსილი რგოლები, არიან საიტები სადაც შეხვედით. სწორედ მათგან გამოდიან ხაზები და მიემართებიან იმ საიტებისკენ (რგოლებისკენ), რომელთაც თქვენი ბრაუზერიდან ინფორმაცია მიიღეს.

წითელი რგოლებით აღნიშნულია ვებსაიტები, რომლებიც ცნობილია, რომ აგროვებენ მომხმარებელთა ინფორმაციას. რუხი ფერის რგოლებიანი ვებსაიტები კი შესაძლოა აგროვებდნენ ინფორმაციას, შესაძლოა არა.

თუ რომელიმე წითელ ან რუხ რგოლთან მიიყვანთ კურსოს, გამოჩნდება, თუ რომელი ვებსაიტებიდან იღებენ ისინი ინფორმაციას.

ექსტენშენის სხვა ფუნქციების აღწერას აღარ გავაგრძელებ.

ტესტი Do Not Track-ით

შემდეგი ტესტისთვის Do Not Track ფუნქცია მოვნიშნე (იხილეთ ზემოთ).

შევედი იგივე ვებსაიტებზე.

შედეგი:

with_Do_Not_Track

(რადიკალურ) განსხვავებას ვერ ვხედავ. თუმცა ეს სულაც არ ნიშნავს Do Not Track-ის არაეფექტურობას.

ა) შესაძლოა Collusion http header-ს, რომელშიც მონიშნულია Do Not Track, მაინც თვლის როგორც გაგზავნილ/მიწოდებულ ინფორმაციას.

ბ) შესაძლოა (მაგრამ ნაკლებ სავარაუდოა), სურათზე გამოსახულ ყველა ვებსაიტი აიგნორებდეს Do Not Track-ს.

ეს შეკითხვა Collusion-ის ავტორებსაც მივწერე. მათი მხრიდან feedback-ის შემთხვევაში, პოსტს დავააფდეითებ.

საბოლოო ჯამში Collusion სასარგებლოა. სულ მცირე იმას მაინც ანახებს, მოცემული ვებსაიტიდან რომელ სხვა საიტებზე მიდის ინფორმაცია.

ქრომში ექსტენშენის წაშლისთვის შევდივართ chrome://extensions/ და შემდეგ ვაჭერთ შესაბამისი ექსტენშენის გასწვრივ ნაგვის ყუთს:

remove_extension

აქვე დავამატებ, რომ Collusion არის open-source.

ამას გარდა, თუ თქვენ იყენებთ ფაიერფოქსს, არსებობს იგივე სახელისა და ფუნქციების მქონე add-on: addons.mozilla.org/en/firefox/addon/collusion/ (თუმცა არ დამიტესტავს).

რას ამბობს თქვენი ბრაუზერი თქვენზე

ისევე როგორც არ არსებობს ორი იდენტური თითის ანაბეჭდი, ასევე არ არსებობს ორი იდენტური კომპიუტერული სისტემა (მაგალითად, კომპიუტერები, რომელთაც ახლა უსხედხართ). როდესაც ინტერნეტში შედიხართ, თქვენ (უფრო სწორედ, თქვენი ბრაუზერი) ტოვებთ კვალს, რომელიც ერთობ ინფორმაციული შეიძლება იყოს.

ვებსაიტი browserspy.dk გეტყვით რა უნიკალურ კვალს ტოვებს თქვენი ბრაუზერი ინტერნეტში. როდესაც ამ საიტზე შეხვალთ, მარცხენა სვეტში სხვადასხვა ტესტებია ჩამოწერილი. სულ 80-მდე ტესტია, რამდენიმე მათგანი მხოლოდ Internet Explorer-ზე ან სხვა სპეციფიკურ ბრაუზერზე მუშაობს. მარცხენა სვეტში რომელიმე ბმულზე დაჭერისას ხორციელდება ტესტი და აგრეთვე ახსნილია თუ რა ინფორმაციის და რა მეთოდით მიღებას ისახავს ის მიზნად.

browserspy.dk მოიცავს ისეთ ტრივიალურ ტესტებს, როგორიცაა IP-სა და თქვენი ინტერნეტის გამტარუნარიანობის (bandwidth) გაგება და ამოცნობა, თუ რომელი ბრაუზერით ხართ ინტერნეტში შესული. ამას გარდა ის გაცნობებთ: აქვს თუ არა თქვენს ბრაუზერს ActiveX-ის, Adobe Reader-ის, AJAX-ის და სხვა (ვებ) ტექნოლოგიების მხარდაჭერა. იგებს თუ როგორი პოლიტიკა გაქვთ cookies-ების მიმართ (რა შეიძლება იყოს cookie-ს მაქსიმალური ზომა, ჯამში რა მოცულობის cookies-ს მიღება შეუძლია ბრაუზერს, რა cookies-ები გაქვთ სისტემაში იმ მომენტში და ა.შ.).

ყველა ტესტის ჩამოთვლა საჭირო არ არის, მაგრამ browserspy.dk-ს ტესტებს შეუძლიათ გაიგონ, რომელ ოპერაციულ სისტემას იყენებთ (მისი ვერსიისა და სხვა წვრილმანების ჩათვლით), გაქვთ არა გარკვეული პროგრამები (მაგალითად, MS Office-ს უფასო ალტერნატივა Libre Office) დაინსტალირებული, გაქვთ თუ არა დაყენებული DirectX, რომელი საათია თქვენი კომპიუტერული სისტემის მიხედვით და რომელი სასაათო სარტყელი გაქვთ მითითებული და ა.შ.

ერთ ტესტი (Mathematical Information) JavaScript-ის მეშვეობით თქვენს სისტემას გარკვეულ მათემატიკურ გამოთვლებსაც გააკეთებინებს და წარმოგიდგენთ პის, სხვადასხვა რიცხვების ლოგარითმებსა და მათ კვადრატულ ფესვებს.

შესაძლებელია აგრეთვე დადგინდეს რა ფონტები გაქვთ სისტემაში დაინსტალირებული. აღმოჩნდა, რომ 441 ფონტი მქონია და მათი სახელწოდებებიც ჩამოიწერა.

საბოლოო ჯამში, საკმაოდ მოცულობითი ინფორმაცია გამოდის. browserspy.dk-ზე თავმორილი ტესტების უმრავლესობას სხვადასხვა ონლაინ აპლიკაციები უკვე დიდი ხანია იყენებენ. ისინი, უპირველეს ყოვლისა, აპლიკაციების უფრო user friendly გარდაქმნასა და მოხმარების სიადვილის (usability) გაუმჯობესებას ემსახურებიან. მაგალითად, ფონტების ტესტის შემდეგ ვებ აპლიკაციამ შესაძლოა თქვენთვის სასურველი კონტენტი უფრო მისაღები ფორმით წარმოგიდგინოთ.

ცხადია, თუ ვინმე თქვენი ბრაუზერის მიერ მიწოდებულ ინფორმაციას usability-სთვის იყენებს, გამოჩნდებიან ადამიანები, ვინც ამ ინფორმაციას თავიანთ სასარგებლოდ და თქვენს საზიანოდ გამოიყენებენ. შესაძლებელია, სისტემისა და ბრაუზერის ისე დაკონფიგურირება, რომ თქვენს შესახებ გაცილებით ნაკლები ინფორმაცია იყოს ცნობილი და თავად ბრაუზერიც უფრო უსაფრთხო გახდეს სხვადასხვა script-based შეტევების მიმართ (ამაზე სხვა პოსტში დავწერ). თუმცა ბრაუზერი სრულიად უჩინარი ვერასოდეს გახდება. თუ ინტერნეტში სადმე წააწყდით ინფორმაციას, რომ ბრაუზერის რაღაც setting-ების შეცვლით შესაძლებელია FBI-ის ისე დაჰაკვა, რომ ვერ მოგაგნებენ – ტყუილია.

უსაფრთხოების გაუმჯობესებისა და თქვენი სისტემის შესახებ ინფორმაციის გაუვრცელებლობის უზრუნველყოფის ყველაზე მარტივი და ეფექტური მეთოდი (რომელიც ყველა პრობლემას ვერ აგვარებს, თუნდაც იმიტომ, რომ მრავალი სხვდასხვა ვებ ტექნოლოგია/პლატფორმა არსებობს და ერთის გათიშვა არ არის საკმარისი) ბრაუზერში სკრიპტების (JavaScript-ის) აღსრულების აკრძალვაა.

ქრომში ეს შემდეგნაირად კეთდება:

Settings –> Show Advanced Settings –> Privacy –> Content Settings (გაიხსნება ახალი ფანჯარა) –> JavaScript –> მონიშნეთ Do not allow any site to run JavaScript –> OK

სხვა ბრაუზერებისთვის დაგუგლეთ disable JavaScript in Firefox/Internet Explorer/Opera. . .

მაგრამ უნდა გაითვალისწინოთ, რომ მრავალი ვებ საიტი იყენებს JavaScript-ს კონტენტის უკეთ პრეზენტაციისთვის. ამას გარდა, ბრაუზერებს ჩაშენებული და ამოქმედებული აქვთ თავდაცვის გარკვეული მექანიზმები by default. როდესაც ვებ აპლიკაცია თქვენს სისტემას რაიმე კოდის/სკრიპტის (მაგალითად, Java-ში დაწერილის) აღსრულებას სთხოვს, წესითა და რიგით, ბრაუზერზმა მისამართის ზოლის ქვემოთ (ან სხვა თვალსაჩნო ადგილას) გაფრთხილება უნდა ამოაგდოს, რომელიც კოდის გაშვებისთვის თქვენს ნებართვას ითხოვს:

ამიტომ რაღაცეების ტოტალურად გათიშვაზე უფრო ეფექტური კონკრეტული სიტუაციისადმი რაციონალური მიდგომა და ბრაუზერების უსაფრთხოების  საკითხზე ინფორმაციის მოძიება მგონია.

გარდა ამისა, შესაძლებელია სხვა ზომის მიღებაც. HTTP პროტოკოლს, რომელიც ინტერნეტში მონაცემთა გაცვლისა და კომუნიკაციის საფუძველია, აქვს ერთგვარი ფუნქცია, რომელსაც ეწოდება do-not-track (DNT). ეს ფუნქცია ბრაუზერიდან უნდა ჩართოთ (როგორც ამბობენ, ქრომში ამის გაკეთება შესაძლებელი იქნება 2012 წლის ბოლოდან), რის შემდეგაც თქვენი ბრაუზერი ვებ საიტს ეტყვის, რომ თქვენ არ გსურთ მას (ვებსაიტს) მიაწოდოთ ინფორმაცია თუ როგორ მოხვდით მასთან. გაითვალისწინეთ, რომ საიტების (სერვერების) ნაწილს შეუძლია უგულებელჰყოს თქვენი სურვილი და მაინც ჩაინიშნოს როგორ მოხვდით მასთან.

Firefox-ში do-not-track-ის გააქტიურებისთვის:

Tools –> Options –> გამოვა ახალი ფანჯარა, სადაც უნდა მონახოთ Privacy –> მონიშნეთ Tell websites I do not want to be tracked

ამ მეთოდების გარდა, შესაძლებელია ასევე კომპიუტერიდან Java-ს და სხვა პლატფორმების (Adobe Flash) ამოინსტალირებაც. მაგრამ გაწვალდებით. მაგალითად, Flash-ის მოსპობის შემთხვევაში, YouTube-ით ვეღარ ისიამოვნებთ.