Agile Security Manifesto

agile seurity manfiesto

2001 წელს 18-მა დეველოპერმა გამოაქვეყნა ე.წ. Agile მანიფესტი, რომელშიც ჩამოყალიბებული იყო პროგრამული უზრუნველყოფის განვითარების პრინციპები.

მანიფესტს თავისი საიტიც აქვს და ქართულადაც არის თარგმნილი (სიტყვა Agile-ის გარდა 😀 ).

2016 წელს კომპანია Cigital-მა, რომელიც მოღვაწეობს პროგრამული უზრუნველყოფის უსაფრთხოების სფეროში, გამოაქვეყნა Agile უსაფრთხოების მანიფესტი.

მანიფესტის სრული ტექსტის PDF იხილეთ Cigital-ის საიტზე, აქ კი გთავაზობთ ძირითად პრინციპებს:

  1. პროგრამული უზრუნველყოფის უსაფრთხოება, პირველ რიგში, უნდა იყოს დეველოპერებისა და ტესტერების, და არა უსაფრთხოების სპეციალისტების, საქმე და პასუხისმგებლობა;
  2. უსაფრთხოება ჩადებული უნდა იყოს დეველოპმენტის პროცესსა და საქმიანობაში და უსაფრთხოებაზე ზრუნვა არ უნდა იწყებოდეს პროგრამის დასრულების შემდეგ;
  3. უმჯობესია პროგრამის ფუნქციონალში იყოს გათვალისწინებული უსაფრთხოება, ვიდრე ცალკე უსაფრთხოების ფუნქციონალი ემატებოდეს პროგრამას; გარდა ამისა, პროგრამაში უნდა ჩაიდოს უსაფრთხოების გამოცდილი და დატესტილი იმპლემენტაცია და არა იმპროვიზაცია;
  4. ორიენტაცია უნდა იყოს რისკების მოგვარებაზე და არა ბაგების აღმოფხვრაზე – დეველოპმენტის პროცესში გათვალისწინებული უნდა იყოს რისკები და უსაფრთხოება არ ამოიწურებოდეს ბაგების ან სისუსტეების სიის აღმოფხვრით;

 

YPP – Information and Telecommunications Technology

რამდენიმე წლის წინ გაეროს Young Professionals Programme-ში მივიღე მონაწილეობა (Information and Telecommunications Technology მიმართულება). გაეროს ეს პროგრამა საშუალებას აძლევს ახალგაზრდა პროფესიონალებს დაიწყონ მუშაობა გაეროში. რამდენიმეეტაპიანი შერჩევის პროცესიდან პირველია წერითი ტესტირება.

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

Open Questions
1. 
a) What is index in relational databases and what is its main benefit?
b) What is major difference between clustered index and non-clustered index?
2. Describe what is agile software development methodology. List its one advantage and one disadvantage.
3. What is taxonomy in the context of Record Management System? And why it is important to have a taxonomy in such a system?
4. What is difference between encryption and crystallographic hash algorithm. List usage of each of these.
5. What is tole and function of standard stateful firewall? What two security function it is NOT able to perform?
6. What is essential specifications, service characteristics and deployment characteristics of cloud computing?
7. Throughout the world ISPs are implementing IPv6. Why is IPv6 implementation needed and what are the specifications of its implementation.
8. Specify what are two types of virtualization and what are benefits of each of them.
Essays
1. Based on PRINCE2 and PMBOK
a) What is classical definition of the project?
b) List 5 characteristics of a project brief?
c) Why achieving more than planned with project may be a project failure?
. . .
2. Software 4
UML (Unified Modeling Language)
ER based diagram or class diagram of software functionality.
LIst 3 methods to verify the entry of data to DBs.
3. Data centers
RTO, RPO
Technology for interchanging data between two data centers
Load balancing technology
MPLS
Tagging for MPLS
4. Service desk
Essential characteristics for its effective functioning
Steps to respond request or incident
How to respond:
a) Provision of tablet computer;
b) User access request to ER;
. . .

 

ბოქლომი

მგზავრობისას ბარგს ბოქლომით იცავთ და გიჭირთ 3 ან 4 ციფრიანი კოდის დამახსოვრება?

სწორედ თქვენთვის ახალი ბოქლომი შექმნეს! მასზე შეგიძლიათ დააყენოთ თარიღი. მაგალითად, თქვენი დაბადების დღე, რომელსაც აეროპორტის პერსონალი თქვენი პასპორტიდან გაიგებს, თქვენი დაქორწინების თარიღი, რომელიც ფეისბუქის public პროფილზე გიწერიათ ან გამგზავრების დღის თარიღი, რომელსაც ნებისმიერი გამვლელი მიხვდება 😀

P.S. ამავე დროს არ დაგავიწყდეთ, ყველაზე ძვირფასი ნივთები ამ ბოქლომით დაცულ ჩემოდანში ჩაალაგოთ 🙂

Birthday Lock

P.S.S. მარტივი ანალიზი და შედარება 4-ციფრიან ბოქლომთან:

4 ციფრიან ბოქლომზე შეიძლება 10,000 სხვადასხვა კომბინაციის დაყენება (0000-დან 9999-ის ჩათვლით).

ამ ბოქლომზე შეიძლება დაყენდეს 48,000 სხვადასხვა თარიღი (მარცხნიდან პირველზე არის 4 ვარიანტი (0,1,2,3), მეორეზე – 10, მესამეზე – 12 (თვეები), მომდევნო 2-ზე კი 10-10; შესაბამისად: 4x10x12x4x10=48,000)

ერთი შეხედვით, თარიღიანი ბოქლომი უფრო “უსაფრთხო” ჩანს, თუ ჩავთვლით, რომ მასზე დადებული კოდი იქნება random და შესაძლებელი იქნება ავირჩიოთ 30 თებერვალი და 35 მაისი (ამის შესაძლებლობას იძლევა ბოქლომი).

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

გარდა ამისა, დაბადების დღიანი ბოქლომის კოდი შედგება სხვადასხვა სიძლიერის ნაწილისგან და ერთი რომელიმე მათგანის გამოცნობამ შესაძლებელია ძლიერ შეამციროს ვარიანტების რაოდენობა. მაგალითად, მხოლოდ იმის გაგებით, რომელი თვეა არჩეული, შესაძლო ვარიანტები 48,000/12=4,000-მდე მცირდება (რაც 2.5-ჯერ ნაკლბია 4-ციფრიანი კოდის შესაძლო ვარიანტებზე).

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

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

როგორ უშლიან ამერიკული კომპანიები NSA-ს და FBI-ს ნერვებს

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

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

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

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

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

* საინტერესოა სიტყვა Canary-ს (რაც კანარის ჩიტს ნიშნავს) გამოყენება ინფორმაციულ უსაფრთხოებაში სხვადასხვა კონტექსტში. ძველად მაღაროელებს მიწის ქვეშ კანარის ჩიტები ჩაჰყავდათ. ჰაერში ჟანგბადის რაოდენობის ცვლილებაზე ჩიტები სწრაფად რეაგირებდნენ და იღუპებოდნენ, მაღაროელები კი ხვდებოდნენ რომ რაღაც რიგზე ვერ იყო და მაშინვე ამოდიოდნენ მიწის ზედაპირზე. “კანარის ჩიტი” დამკვიდრდა რაიმე არასასურველი მოვლენის გამაფრთხილებლის მნიშვნელობით.

ალექსანდერ ნტოკოსა და ევგენი კასპერსკის საერთო აზრების შესახებ

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

ინტერნეტის მართვაზე (internet governance) ორიოდ სიტყვით ვიტყვი, რომ საერთაშორისო არასამთავრობო ორგანოების მეშვეობით, ამერიკასა და “დასავლეთის” ქვეყნებს გადამწყვეტი გავლენა აქვთ ინტერნეტის განვითარების როგორც ტექნიკურ, ისე სოციო-პოლიტიკურ ასპექტებზე. შეგვიძლია ვთქვათ, რომ ამჟამად ეს გავლენა გამოიხატება თავისუფალ და ყველასთვის ხელმისაწვდომ ინტერნეტში. ჩინეთი და რუსეთი კი გაეროს (უფრო კონკრეტულად კი, მისი ერთ-ერთი ორგანოს ITU-ს – International Telecommunication Union) გავლით ცდილობენ ინტერნეტის მართვაზე ამერიკისა და ევროპის გავლენის შესუსტებასა და თავიანთი მთავრობების გავლენის ზრდას.

ზემოთ ხსენებულ სტატიაში, სხვა მრავალ საყურადღებო პუნქტთან ერთად, ნახსენები იყო თუ როგორ ლობირებს ევგენი კასპერსკი ინტერნეტში ნებისმიერი მომხმარებლისთვის “პასპორტის” იდეას “უსაფრთხოებისა” და “მოქალაქეთა დაცვის” მოტივით. “ინტერნეტ-პასპორტი” უნდა იყოს მომხარებლის ერთგვარი ID ინტერნეტში – რისი მიხედვითაც გადაწყდება მიეცემა მას თუ არა წვდომა რომელიმე რესურსთან. ამას გარდა, გაადვილდება ინტერნეტში მომხმარებელთა ქმედებების ტრეკინგი (რომელიც, ცხადია, თავად მომხმარებლების უსაფრთხოებისთვის უნდა გაკეთდეს 🙂 )

ITU-ს მაღალჩინოსანი ალექსანდერ ნტოკო მხარს უბამს კასპერსკის და მოჰყავს შემდეგი მაგალითი: ბანკში რომ მივდივართ, ხომ არავის ვუმალავთ ჩვენს სახეს და ონლაინშიც ასე უნდა იყოსო. ნტოკომ ეს აზრი Kaspersky-ს მიერ კანკუნში ორგანიზებულ Kaspersky Lab Cyber Conference-ზე გამოთქვა 2012 წელს (უფრო დაწვრილებით წაიკითხედ zdnet-ის სტატიაში).

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

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

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

ა) საერთოდ არ არიან გათვითცნობიერებული როგორც მუშაობს ინტერნეტი, თანამედროვე ტექნოლოგიები და თავში მოსდით არაადეკვატური აზრები (მაგალითად, ერთ-ერთმა ამერიკელმა მაღალჩინოსანმა ინტერნეტი განმარტა როგორც “ერთმანეთთან შეერთებული ტუბები”);

ბ) კარგად იციან რასაც ლაპარაკობენ და სურთ გაუთვითცნობიერებელი მომხმარებლების (მოქალაქეთა დიდი ნაწილი) შეცდომაში შეყვანა;

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

გადაიხადე მარტივად PIN კოდის გარეშე. . .

ორიოდე დღის წინ გამიკვირდა როცა შევნიშნე, რომ როდესაც წვრილმანი თანხის გადასახდელად საბანკო ბარათი გავუწოდე სუპერმარკეტის მოლარეს, მან ბარათი უბრალოდ დაადო ტერმინალს და ტრანზაქცია განხორციელდა – არანაირი PIN კოდის შეყვანა არ დამჭირვებია!

ცოტა ხნის წინ რამდენიმე ქართულმა ბანკმა დაიწყო RFID (Radio Frequency Identification) ჩიპებით აღჭურვილი ბარათებისა და სტიკერების გამოყენება. სტიკერი, რომელსაც მომხმარებლები ძირითადად მობილურ ტელეფონებზე აწებებენ, ანალოგიურად მუშაობს – POS ტერმინალზე დადებისას იხდის თანხას PIN-ის შეყვანის გარეშე. RFID ჩიპიანი ბარათი შეგვიძლია ვიცნოთ თავად საბანკო ბარათზე დატანილი contactless_indicator ინდიკატორით.

როგორი მოსახერხებელია ყოველგვარი PIN-ის გარეშე 2 წამში თანხის გადახდა! თუმცა ბარათი ან სტიკერი რომ მოგვპარონ?

დღეს ვიყავი ბანკში, რომ ცოტა მეტი რამ გამერკვია RFID-იან ბარათებზე.

აღმოჩნდა, რომ ერთჯერადი ლიმიტი არის დაახლოებით 50 ლარი. თუ გადასახდელი თანხა ამ ლიმიტზე მეტია, მაშინ ბარათი უნდა ჩავდოთ POS ტერმინალში და შემდეგ PIN-იც შევიყვანოთ.

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

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

თუ ბარათის დაზღვევა არ გნებავთ (მაგალითად იმიტომ, რომ ჩემსავით თვლით, კლიენტის დაცვა ბანკის მოვალეობაა დამატებითი დაზღვევებისა თუ საკომისიოების გარეშე!), ბარათი და შესაბამისად ფულიც მოგპარეს, მაშინ პოლიციაში უნდა იჩივლოთ.

აღსანიშნავია, რომ RFID ჩიპით გადახდის სერვისის გამორთვა შესაძლებელი არ არის.

ასევე არ არის შესაძლებელი ისეთი ბარათის აღება, რომელსაც არ ექნება RFID ჩიპი (ჩვენს ყველა ბარათს აქვსო – ბანკში მითხრეს).

დიდი ხნის მანძილზე, ამერიკული ბანკების საბანკო ბარათები ქურდებისა და თაღლითების საყვარელი სამიზნე იყო, რადგანაც მხოლოდ POS ტერმინალზე ბარათის ჩამოსმა საკმარისი იყო ტრანზაქციისთვის (მთელი ინფორმაცია ბარათის მაგნიტურ ველზე იყო მოთავსებული). ამერიკული ბანკები თაღლითობის ზრდისა და თაღლითობისგან კლიენტების დაცვის რეგულაციების გამკაცრების გამო, ნელ-ნელა გადავიდნენ (გადადიან), ე.წ. smart ბარათებზე, რომელთაც უფრო “ჭკვიანი” (საკუთარი მეხსიერებითა და პროცესორით აღჭურვილი მინი-ჩიპები SmartCard-Alliance) ჩიპი აქვთ და შეუძლიათ უსაფრთხოების მექანიზმების უზრუნველყოფა (ამ შემთხვევაში, ყოველი ტრანზაქციის დროს PIN კოდის მოთხოვნა).

იმპლემენტაციიდან გამომდინარე, შეიძლება RFID ჩიპი მაგნიტურ ველიან ბარათზე უარესიც აღმოჩნდეს რისკების თვალსაზრისით. RFID არის უკონტაქტო ტექნოლოგია. ის დაახლოებით 10 სანტიმეტრის რადიუსში მუშაობს. თუმცა არსებობს ძლიერი RFID წამკითხველები, რომლებიც ბარათებს 1 მეტრის რადიუსშიც კითხულობენ. თუ მონაცემები ჩიპზე დაშიფრული არ არის, მაშინ მარტივად შეიძლება მათი გადაკოპირება ახალ ჩიპზე და შემდეგ გამოყენება. თუმცა, როგორც წესი, საბანკო ბარათებზე მონაცემები დაშიფრულად ინახება.

რომ შევაჯამოთ:

  • PIN-ის გარეშე შესაძლებელია პრაქტიკულად ნებისმიერი თანხის დახარჯვა მცირე პორციებით (რისკების შესამცირებლად შეიძლებოდა სხვადასხვაგვარი ლიმიტების დადება – მაგალითად, საათში მაქს. 50 ლარის გადახდა და მხოლოდ 1 ტრანზაქციის გაკეთება PIN-ის შეყვანის გარეშე).
  • სერვისს არ აქვს ე.წ. opt-out. მოგწონს თუ არ მოგწონს, საბანკო ბარათს გადახდის ასეთი საშუალება მაინც ექნება.
  • ბანკი თაღლითობისგან დაცვას მთავაზობს მხოლოდ დამატებითი თანხის გადახდის შემთხვევაში.

მოხმარების სიმარტივე და კომფორტი კარგია, მაგრამ RFID-ჩიპიანი ბარათებით პრაქტიკულად ულიმიტო გადახდის დანერგვით, საქართველოში საბანკო ბარათების უსაფრთხოებამ 15 წლით უკან დაიწია.

ჩემი ნაშრომები კიბერუსაფრთხოების ბიუროს საიტზე

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

იგივე პროგრამაზე სწავლისას, ჩემს მიერ დაწერილი ნაშრომები გავუგზავნე და ისინიც გამოაქვეყნეს.

მადლობა კიბერუსაფრთხოების ბიუროს!

პითონის default ვერსიის შეცვლის, სიმბოლური ლინკებისა და yum-ის KeyboardInterrupt ერორის ამბავი

რამდენიმე ხნის წინ დამჭირდა პითონის დააფდეითება 2.7.5-დან 3.2.3-ზე ჩემს ფედორა 19-ზე. დააფდეითების შემდეგ ($ sudo yum upgrade python), ვერსიად მაინც ძველს (2.7.5) მაჩვენებდა.

მცირედი დაგუგლვის შემდეგ ვიპოვე, რომ საკითხის მოგვარება მარტივად შეიძლება პითონის სიმბოლური ლინკის შეცვლით:

/usr/bin-ში (სადაც არის პითონის ინსტალაცია), არის ფაილი python, რომელიც უთითებს პითონის ვერსიაზე.

ამის შემოწმება შეგვიძლია შემდეგნაირად:

$ readlink /usr/bin/python

python2

python2 იყო ბრძანების პასუხი.

symbolic link-ების შესაქმნელად თუ შესაცვლელად ვიყენებთ ln-ს. შეიძლება symbolic link ისე შევცვალოთ, რომ არ წავშალოთ.

პითონის შემთხვევაში:

$ ln -f -s /usr/bin/python3 /usr/bin/python

$ readlink /usr/bin/python

-f არის ბრძანების ფორსირება. -s არის სომბოლური ლინკის შექმნა. ამის შემდეგ, ჯერ ვუთითებთ target ფაილს/ფოლდერს, შემდეგ კი ლინკს.

შედეგი:

$ python –version

Python 3.2.3

ამას კიდევ ერთი შედეგი მოჰყვა. კერძოდ ის, რომ yum-მა პროტესტის ნიშნად მუშაობაზე უარი განაცხადა. ნებისმიერი პაკეტის ინსტალაციის თუ აფდეითის დროს, აგდებდა შეცდომას:

File “/usr/bin/yum”, line 30

except KeyboardInterrupt, e:

გამოძიებამ დაადგინა, რომ საქმე სამხრეთ ამერიკული სერიალის სიუჟეტივით ყოფილა ჩახლართული.

პითონის 3.2.3 ვერსიას ჰქონია ავი ზნე: სისტემას მოყოლილ პითონის ინსტალაციის ბრძანება python-ს ცვლის. რა შუაშია yum-თან? ეს უკანასკნელი პითონის (2.7.5 ვერსიის) გარვეულ მოდულებს იყენებს.

მოკლედ, ინტერნეტში ბევრი სხვადასხვა ვერსიაა პრობლემის მოსაგვარებლად. მაგალითად, რჩევა $ yum clean all ბრძანების გაშვებისა. არ დაიჯეროთ. yum საერთოდ არ ეშვება და აბა clean all-ს როგორ იზამს.

მოკლედ, “დავროლბექდი” ისევ 2.7.5-ზე სიმბოლური ლინკების გადართვით:

$ ln -f -s /usr/bin/python2 /usr/bin/python

ცოტაოდენი კითხვის შემდეგ აღმოვაჩინე, რომ თუ პითონის ახალ ვერსიას დავაინსტალირებთ make install-ით უარესად იქნება საქმე და yum-ს შეიძლება მხოლოდ პითონის ძველი ვერსიის ფორსირებულმა გადაინსტრალირებამ უშველოს. აქ არის დეტალები: http://stackoverflow.com/questions/11171015/python-and-yum-issue-centos-5-4

ალტერნატივა (ანუ საჭიროების შემთხვევაში პითონის ახალი ვერსიის გამოყენება) არის პითონის სასურველი ვერსიის ცალკე დაინსტალირება (ძველი ვერსიის შენარჩუნებით) და “პირდაპირ დაძახება” python3-ით ან /usr/bin/python3.3-ით.

$ python3 –version

Python 3.3.3

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/ (თუმცა არ დამიტესტავს).

თუ PDF ფაილს “ვადა გაუვიდა”. . . – JavaScript

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

თუ ასეთი დაცვის მექანიზმის მქონე PDF-ფაილს თქვენ ვადის გასვლის შემდეგ გახსნით, მაშინ დაახლოებით ასეთ მესიჯს მიიღებთ:

მესიჯი იტყობინება, რომ საჭიროა გარკვეულ (სკრიპტის ავტორისთვის სასურველ) ვებსაიტზე შესვლა და დოკუმენტის ყიდვა.

ასეთი დაცვის მექანიზმის გვერდის ავლა მარტივია.

თუ PDF დოკუმენტების გახსნისთვის ვიყენებთ Adobe Reader-ს:

Edit –> Preferences

გამოვა ახალი ფანჯარა. მოვნახოთ JavaScript მარცხენა მენიუში.

Enable Acrobat JavaScript იქნება მონიშნული. მონიშვნა უნდა მოვუხსნათ.

OK

გავხსნათ ჩვენი დოკუმენტი.

Adobe Reader ან ახალი ფანჯრის სახით ან დოკუმენტის თავზე ყვითელ ზოლად გამოიტანს გაფრთხილებას, რომ JavaScript გამორთულია. ყურადღებით წაიკითხეთ რა წერია – შეიძლება პროგრამა JavaScript-ის ჩართვას ითხოვდეს და პირდაპირ Yes-ის დაჭერით, ზემოთ აღწერილი მანიპულაცია გასამეორებელი გექნებათ.

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

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