Sử dụng VirusTotal API để phân loại quảng cáo

Một phần của tài liệu đồ án phát hiện và ngăn chặn quảng cáo độc hại dựa vào url (Trang 39 - 42)

VirusTotal là một website dịch vụ trực tuyến miễn phí cho phép xác định được các virus, Trojan, malmare và các nội dung độc hại khác được phát hiện bởi các công cụ chống virus và công cụ quét website (theo VirusTotal.com). Đồng thời nó có thể được sử dụng như một phương tiện để phát hiện dương tính giả, tức là nguồn tài nguyên vô hại được phát hiện như độc hại bởi một hoặc nhiều máy quét.

Nhiệm vụ của VirusTotal là để giúp trong việc cải thiện chống virus và an ninh công nghiệp và làm cho Internet một nơi an toàn hơn thông qua việc phát triển các công cụ và dịch vụ miễn phí.

32

Trong phần này, khóa luận sẽ sử dụng VirusTotal API để phân loại URL quảng cáo. Cũng trong khóa luận này, ta coi kết quả mà VirusTotal phân loại đã được chấp nhận và cũng là kết quả để đối chiếu kết quả thử nghiệm.

Theo sơ đồ dưới đây, chia tập URL quảng cáo D thu được trong phần 3.1.1 thành 2 tập lớn là Dk và Dt, trong đó Dk là tập để làm cơ sở dữ liệu sử dụng thuật toán Kolmogorov, Dt chính là tập để kiểm thử độ chính xác trong việc xác định url độc hại khi sử dụng thuật toán Kolmogorov.

Với mỗi tập lớn ở trên là Dk và Dt, sử dụng VirusTotal API để kiểm tra trong danh sách các url quảng cáo trong mỗi tập xem số lượng URL lành tính và URL độc hại là bao nhiêu.

 Đối với Dk, sử dụng VirusTotal API sẽ chia tập này thành hai tập con là Dkb và Dkm, trong đó Dkb là tập của các url lành tính, Dkm là tập của các url độc hại. Hai tập con Dkb và Dkm sẽ làm tập dữ liệu sử dụng để làm dữ liệu trong thuật toán Kolmogorov để kiểm thử hiệu quả phương pháp.

 Đối với Dt, sử dụng VirusTotal API sẽ chia tập này thành hai tập con là Dtb và Dtm, trong đó Dtb là tập của các url lành tính, Dtm là tập của các url độc hại. Hai tập con này sẽ được sử dụng đối chiếu với kết quả khi sử dụng thuật toán Kolmogorov trên tập Dt này trong việc phát hiện quảng cáo độc hại.

Dưới đây là sơ đồ mô tả lại quá trình sử dụng VirusTotal API để phân loại quảng cáo.

Dk Dt Dkm Dkb Dtm Dtb Dk Dt D VirusTotal API VirusTotal API

33

Sau đây là đoạn mã lệnh giúp phân loại URL dựa trên VirusTotal API .

Dk ml = [] Dk bl = []

# Su dung VirusTotal API de phan loai quang cao for item in list_source_Dk :

parameters = {"resource": item, "apikey": MY_API, "scan": '1'}

data = urllib.urlencode(parameters) req = urllib2.Request(url, data) response = urllib2.urlopen(req) jsonstr = response.read() listjson = simplejson.loads(jsonstr) print listjson total = 0 for i in listjson: if i.get('positives') > 0: Dkml.append(i.get('resource').encode('utf-8')) malicious_count += 1 else: Dkbl.append(i.get('resource').encode('utf-8'))

34

Một phần của tài liệu đồ án phát hiện và ngăn chặn quảng cáo độc hại dựa vào url (Trang 39 - 42)