Hack tải xuống tệp php
Lỗ hổng bảo mật trên mã sẽ giúp Hacker thực hiện các phương pháp tấn công để chèn phần mềm độc hại và trang web Show
Trong Topic đầu tiên của chuyên đề Bảo mật Website – Key hoc Pro WP Master, chúng ta sẽ tìm hiểu các hình thức hack website phổ biến nhất hiện nay Từ đó, các chủ đề sau chúng ta sẽ nhận diện hiện tượng Website bị hack – nguyên nhân và các phương pháp bảo mật mới nhất Chúng ta cũng sẽ làm chủ plugin bảo mật iThemes Security Free và Pro (trong VIP CLUB) để bổ sung các phương pháp bảo mật hiệu quả nhất cho WordPress Cuối cùng chuyên đề sẽ là các phương pháp sao lưu tự động và khôi phục khi gặp sự cố – cũng như hướng dẫn quét phần mềm độc hại và phục hồi Trang web WordPress bị nhiễm mã độc Mục lục bài viết Hack Website là gì?Hack là hành động tối nhập trái phép vào phần cứng hoặc phần mềm Hack Website là xâm nhập trái phép vào Website, truy cập vào các khu vực mà người dùng bình thường không được phép như hosting, trang quản trị, soạn thảo… Hack trang web cũng bao gồm các hành động có thể thâm nhập vào mã nguồn, cơ sở dữ liệu và chỉnh sửa nội dung đã chỉnh sửa và thay đổi các tính năng của Trang web được phép trái phép Mục đích Hack Website là gì?Vào những năm đầu tiên của thế kỷ Web, thì các tay hacker đã tấn công khai thác các lỗ hổng bảo mật trên trang web mục đích duy nhất để hiển thị số má – hoặc phá hoại, có thể để cảnh báo các lỗ hổng bảo mật mà quản trị viên quản trị. Website sân bay tân sơn nhất bị hackBạn có thể thấy các nhiệm vụ tấn công vào Trang web của chính phủ, tập đoàn hoặc tiêu biểu ở VN là tấn công vào Trang web của bộ Giáo dục & Đào tạo đang tạo Các lỗi tìm kiếm mật khẩu trên Website – dù sử dụng mã nguồn gì thì cũng luôn luôn tồn tại, vấn đề là nó đã được phát hiện hay không thôi Đôi khi, các lỗi truy mật bắt nguồn từ các lỗi cực kỳ sơ đẳng, ví dụ như lưu thông tin đăng nhập trên máy tính, điện thoại rồi mang ra tiện ích, … So với thời kỳ đầu, thì mục đích của Hack Website hiện nay 99% là vì tiền, như ăn cắp dữ liệu để bán lại, ăn cắp thông tin thẻ tín dụng/ ghi nợ để rút tiền, hack bừa cho các đối thủ cạnh tranh Và tốt nhất là hack cho các mục đích kiếm tiền trực tiếp. chèn liên kết chuyển hướng về trang kiếm tiền, chèn nội dung lừa đảo, chèn quảng cáo, chèn liên kết cho các chiến dịch Blackhat SEO… Nhưng trang web đó không quan trọng?Khi mới bắt đầu tạo Website, chúng ta thường nghĩ Web đó chỉ là web mẫu, có bị hack cũng không sao. Nhưng khi một website bị thâm nhập, hacker sẽ cài mã độc lên hosting và âm thầm lây lan lên toàn bộ các Website khác sau này,… Khi Website bị chiếm quyền, hacker có thể sử dụng các phương pháp tấn công Local Attack rất phổ biến để thi hành các lệnh tấn công toàn bộ các Website khác trên cùng gói Hosting. Vô số tác hại xảy ra khi một trang web bảo mật kém nằm trên cùng một máy chủ lưu trữ/vps với các trang web quan trọng khác, không chỉ lây nhiễm mã độc mà còn khiến nguy cơ các trang web khác bị Google cấm cửa chỉ vì một trang web demo vô thưởng Các phương thức hack Website phổ biến nhất 2019Dù cách thức thực hiện hack Trang web vô cùng đa dạng, nhưng chung quy, có các hình thức phổ biến chiếm hầu hết các nhiệm vụ tấn công bảo mật Có 2 kiểu tấn công là
Dù là kiểu tấn công nào, thì cuối cùng, kết quả thường là Website của bạn sẽ được chèn mã độc, để hacker có thể lùi lại một cửa hậu cho phép họ thâm nhập sau này, hoặc mã độc âm thanh thực hiện các nhiệm vụ Chúng ta sẽ tìm hiểu về Mã độc trên Website – Phần mềm độc hại trong chủ đề tiếp theo 1. Tấn công Dò mật khẩu – Brute Force AttackĐây là kiểu tấn công tưởng tượng là cơ bản – nhưng hiệu quả cao nhất Brute Force Attack là gì?Brute Force Attack là kiểu tấn công bằng phương pháp dò mật khẩu, với các thuật toán tự động thử các chuỗi mật khẩu khác nhau, bao gồm số, chữ cái – chữ cái & số… Về lý thuyết, nếu có đủ thời gian, thì Brute Force cuối cùng sẽ tìm được mật khẩu chính xác Không phải như nhiều người nghĩ Brute Force Attack là ‘đoán’ mật khẩu, mà thực tế có các chương trình với thuật toán dò mật khẩu ‘máu lạnh’ – với xác xuất bắt được các mật khẩu yếu rất cao Nếu bạn dùng tài khoản kiểu admin/ password, admin/ 123456, admin/ 123abc… thì xem như cung cấp Website cho Hacker rồi. Để kiểm tra xem thời gian trung bình dò mật khẩu, bạn có thể kiểm tra tại đây Kiểm tra mật khẩu – Kaspersky Lab Với phần mềm mà hacker nào cũng có thể viết hoặc tìm được trên mạng, được hacker cung cấp dải IP hay danh sách miền lấy từ các nguồn có sẵn thì danh sách Website bị thâm nhập nhiều như lá mùa thu, tất cả Brute Force Attack qua XML-RPC trên WordPressThông thường phương thức tấn công mật khẩu Brute Force Attack được thực hiện bằng cách gửi thông tin tên người dùng/mật khẩu trực tiếp tới trang đăng nhập WordPress, mặc định là ten-mien/wp-admin hoặc ten-mien/wp-login. php Để chống lại, chúng ta thường xuyên đổi đường dẫn đăng nhập (dùng plugin iThemes Security đã hết hạn), hoặc thêm tính năng mật khẩu 2 lớp (Xác thực hai yếu tố), hoặc thêm hộp kiểm Captcha… Nhưng, còn một kiểu Brute Force Attack khác, đó là thông qua XML-RPC Tấn công Brute Force Attack qua XML-RPC. Nguồn Sucuri blogXML-RPC là gì?XML-RPC là một giao thức gọi thủ tục từ xa, cho phép thực hiện các yêu cầu HTTP theo một tập lệnh XML đã được mã hóa The other point is the XML-RPC is the method system. multicall, allow gửi nhiều tổ hợp tham số trong mỗi yêu cầu XML-RPC không chỉ được sử dụng trong WordPress mà còn hỗ trợ trên nhiều CMS và ngôn ngữ lập trình Web phổ biến khác. XML-RPC hiện nay không còn quá cần thiết, chỉ có một số ít plugin còn cần tính năng này (như Jetpack). Nhưng nó vẫn được kích hoạt tự động trong WordPress Core Trong WordPress, XML-RPC có tính năng cho phép kết nối với WordPress từ các ứng dụng bên ngoài để đăng bài (chẳng hạn như Ứng dụng WordPress trên Apple App Store. ) Đây là tính năng có được do thời gian kết nối Internet còn chậm, người dùng soạn thảo sẵn bài viết trên máy tính và sử dụng XML-RPC để kết nối với Trang web và đăng bài thay vì mở trình duyệt web và soạn thảo trực tiếp như hiện nay Từ năm 2015, hacker đã lợi dụng hệ thống phương thức. multicall của XML-RPC để thực hiện các truy vấn ngược dòng mật khẩu quản trị Nói nôm na là, hacker will send XML-RPC a command wp. getCategories để truy xuất danh mục dữ liệu – để thực hiện lệnh này, yêu cầu phải đăng nhập quyền Quản trị viên, lợi dụng hệ thống phương thức. multicall mà XML-RPC hỗ trợ, hacker có thể gửi kèm lệnh đó cùng với hàng trăm cặp tên người dùng/mật khẩu khác nhau Như vậy, chỉ với mỗi một yêu cầu HTTP tới XML-RPC, hacker sẽ thử truy cập vài trăm cặp người dùng/vượt qua, nên phương thức tấn công này có cường độ gấp trăm lần so với cách tấn công Brute Force Attack qua trang đăng nhập (mười . php,…) Cách tấn công này cũng không thể chặn bằng phương pháp đổi đường dẫn đăng nhập hoặc hai xác thực, hộp kiểm Captcha… Vì tính năng XML-RPC khi bật có thể gửi yêu cầu trực tiếp mà không cần thông qua bất kỳ lớp bảo mật thông thường nào Do cường độ tấn công lớn, lỗi theo dõi XML-RPC còn được sử dụng cho mục đích tấn công từ chối dịch vụ (DDos) Để chống lại tình trạng này, chúng ta cần phải tắt thủ công XML-RPC khỏi máy chủ lưu trữ hoặc tắt một phần – hệ thống ngăn chặn. multicall bằng các plugin Việc này sẽ được hướng dẫn chi tiết trong chủ đề các phương pháp bảo mật trong cùng chuyên đề này
2. Tấn công vào các lỗi bảo mật trên HostingCó vô số dịch vụ Hosting/ VPS giá rẻ như cho trên thị trường, với thông số quảng cáo hoành tráng – nhưng đằng sau đó đôi khi chỉ là một 'tay mơ' thuê máy chủ để bán hosting hoặc mua các gói đại lý hosting Các công nghệ bảo mật trên hosting yêu cầu bạn đầu tư tiền và phải có chuyên môn kỹ thuật, kinh nghiệm mới chắc chắn đượcHosting không chỉ có phần cứng tài nguyên, mà các công nghệ đảm bảo an toàn cho Website càng quan trọng hơn nhiều Nếu máy chủ, vps hoặc gói lưu trữ bị hacker thâm nhập, thì mọi cách thức bảo mật trên Trang web đều trở nên vô nghĩa Tai hại tại chỗ, nếu Website bị nhiễm phần mềm độc hại trên hosting cũ, bạn chuyển qua hosting mới mà chưa khử sạch mã độc trong code và cơ sở dữ liệu thì mọi thứ vẫn không có gì khác 3. Hack error security on CodeTấn công bảo mật Code Injection – nguồn researchgate. netĐây là cách thức tấn công Website phổ biến nhất, nó là nguyên nhân chính khiến cho ‘bảo mật Website’ là cuộc chiến trường kỳ, không bao giờ có EndGame Mọi ngôn ngữ lập trình đều có điểm mạnh, điểm yếu nên luôn có các phương thức bảo mật để tránh bị hacker lợi dụng Vấn đề là các phần mềm, trang web mã nguồn không thể tự tạo ra mà được mã hóa bằng 'cơ', nên những lỗ hổng bảo mật – từ sơ cấp đến mới gặp ngày được tạo ra. Làm developer có dễ không?Một bạn mới học lập trình nảy sinh ý tưởng về một app có tính năng ‘thú vị’, liền code ngay và đưa lên Store, nhiều người thấy app thú vị nên tải về dùng. Một anh chàng mới học làm Web WordPress, nghĩ ra một tính năng hay, viết mã ngay một plugin và chia sẻ cho cộng đồng sử dụng. Thấy plugin gọn nhẹ mà hay, nhiều người cài đặt và sử dụng một cách thú vị… Nhưng, code không đơn giản chỉ là thực thi ‘tính năng nào’ như mọi người tưởng tượng. Cùng một tính năng, nhưng nếu không hiểu về các cơ chế bảo mật trong chương trình, chúng ta hoàn toàn có thể tạo ra các lỗ hổng để tin tặc tấn công vào Trang web Bad Developer – Nguồn MediumRất nhiều ứng dụng, addons/ plugins/ tiện ích mở rộng… được tạo ra từ những nhà phát triển tay mơ, kèm theo đó là những sơ đồ lỗi đẳng cấp về bảo mật, xử lý hiệu năng và các lỗi tương thích… Với người dùng bình thường, họ chỉ quan tâm đến tính năng hay chứ đâu cần biết nó hoàn toàn không Trong thế giới WordPress, hàng triệu Website vẫn vô tư sử dụng các plugin chỉ có một vài đánh giá trên WP Repository, các plugin này được chia sẻ trong những nhóm người dùng nhỏ (ví dụ các plugin do người dùng VN tạo ra để bổ sung tính năng cho Woo Siêu nhân cũng là con ngườiMọi Coder đều có lúc bất an, chủ quan. Chưa kể có những vấn đề phát sinh từ thực tế sử dụng nên theo dõi bảo mật trong Mã luôn luôn xuất hiện Superman cũng là con người nguồn http. // thật buồn cười. tổ chứcVô số các trang Web lớn (thất cả web của Nhà Trắng) gặp sự cố bảo mật, chẳng hạn như Facebook gần đây – hacker lợi dụng một số tính năng để ăn cắp – xâm phạm dữ liệu của người dùng Trong WordPress, từ mã nguồn WordPress core, các theme khủng Newspaper by Tagdiv, Porto, Avada hay các plugin Revolution Slider, Contact Form 7, Fancy Box… đều từng có những lỗi bảo mật nghiêm trọng Điều quan trọng nhất không phải là chọn CMS, theme, plugin… nào không có lỗi bảo mật – mà là “lỗi bảo mật xuất hiện khi nào và cách nào để phòng tránh – giải quyết lỗi bảo mật” Để hiểu rõ hơn về các cuộc tấn công vào lỗ hổng bảo mật trên mã nguồn, chúng ta sẽ chỉ ra các phương pháp tấn công phổ biến hiện nay thông qua lỗi bảo mật trên mã 3. 1 lần tiêm SQL (SQLi)Dựa vào lỗi bảo mật trong mã truy vấn cơ sở dữ liệu SQL, hacker chỉ cần cố tình sử dụng các giá trị và truy vấn đặc biệt để truy xuất – chỉnh sửa – thêm – xóa dữ liệu trong cơ sở dữ liệu Trong hình là một ví dụ về tấn công lỗ hổng SQL, khi mã không có cơ chế kiểm tra bảo mật chặc ngoại lệ, truy vấn với tham số luôn đúng “1=1” sẽ khiến máy chủ trả về tất cả các kết quả hiện có Tấn công SQL injection – Nguồn CloudFlareLỗi SQL Injection sử dụng một tỷ lệ lớn trong các vụ hack trang web và gây ra tác hại rất nghiêm trọng vì có thể xâm nhập vào cơ sở dữ liệu, hacker gần như chiếm toàn quyền kiểm tra trang web của bạn Các cuộc tấn công SQL Injection nổi tiếngHầu hết các CMS phổ biến đều đã loại bỏ từng lỗi SQLi, như Magento core, Joomla, Drupal… và vBulleting Trong WordPres, gần đây các plugin nổi tiếng như Duplicate Page, Ninja Form, Advanced Custom Form 7 DB, bbPress,… Nổi tiếng nhất là các cuộc tấn công diện rộng vào lỗi truy cập SQLi trên WP Statistics và WP NextGEN Gallery vào năm 2017, gây ảnh hưởng đến cả việc đánh giá các trang web 3. 2 Tập lệnh chéo trang (XSS)Kiểu tấn công này đã gây nhầm lẫn khi bảo mật trên mã, nhưng sử dụng lệnh thực thi phía Trang web khách hàng (phía trước người dùng) Tấn công XSS – source aioncloud. comCác lệnh mà Hacker sử dụng thường là các ngôn ngữ phía máy khách như Javascript(JS), VBScript hay Flash, HTML… hiện nay thì biến phổ biến nhất là JS và HTML Mục đích của các đoạn mã JS, HTML là
Các loại tấn công XSSXSS được phản ánh (không liên tục)Hacker lừa người dùng nhấp vào đường liên kết của trang web họ đang đăng nhập Ví dụ người dùng đang đăng nhập vào vietcombank. com. vn, thì hacker sẽ gửi cho họ một đường liên kết tương tự nhưng kèm theo các tham số để thực thi lệnh js do hacker tạo ra Unabled “https. //vietcombank. com. mã vn/+js” Nếu trang web bị mã kém bảo mật, không kiểm tra và làm sạch các tham số trên ULR, thì lệnh “js code” của hacker sau khi được xử lý bởi Server sẽ trả về quá trình duyệt thi ngay trên trình duyệt của người dùng Có cookie này hacker sẽ đăng nhập vào tài khoản chính của người dùng trên vietcombank. com. vn mà không cần phải có tên người dùng & mật khẩu Tất nhiên cookie chỉ còn hiệu lực nếu phiên làm việc (session) của người dùng vẫn còn, nếu người dùng đã đăng xuất từ vietcombank. com. vn trước khi nhấp vào liên kết do hacker gửi, cookie đó không còn sử dụng để đăng nhập được nữa Cách tấn công này phụ thuộc vào trình độ 'lừa' của hacker và sự bất ngờ từ người dùng XSS được lưu trữXSS được lưu trữ là kiểu tấn công mà các đoạn mã js luôn được chèn vào mã, cơ sở dữ liệu của Trang web. Khi người dùng truy cập vào các nhiệm vụ tương ứng, mã js sẽ thực thi và đánh cắp cookie hoặc đưa thông tin lừa đảo, chuyển hướng sang web xấu Kiểu tấn công này có hiệu quả cao vì không cần người dùng lừa đảo nhấp vào liên kết nào cả, chỉ cần họ vào trang web có tác vụ là gài mã js là được Việc đưa mã độc js vào mã/cơ sở dữ liệu thường được thực hiện thông qua các tính năng cần lưu dữ liệu như Biểu mẫu liên hệ, khung bình luận, đánh giá… Nếu quá trình mã hóa các tính năng này, nhà phát triển không thực hiện các bước bảo mật như kiểm tra xác thực kiểu dữ liệu được nhập – loại bỏ các ký tự nguy hiểm… thì thay vì đưa ra các nội dung hợp pháp như nội dung bình luận Trong WordPress, XSS được lưu trữ là lỗi được khai thác thường xuyên nhất, có thể kể đến phiên bản WordPress 5. 0. x, Chiến tranh xã hội, Jetpack, Akismet, bbPress… XSS dựa trên DOMMột kỹ thuật tấn công XSS mới, cho phép hacker thay đổi cấu trúc DOM của trang web, khi người dùng nhấp vào phần nội dung bổ sung vào đây, đoạn mã js độc hại sẽ thực thi Nó tương tự với Reflected XSS nhưng thay vì gửi về Server để xử lý và phản hồi lại cho trình duyệt, thì DOM-based XSS thực thi ngay trên trình duyệt mà không cần phải gửi về Server để xử lý lệnh Ví dụ: hacker có thể gửi một đường liên kết đến nạn nhân, nạn nhân nhấp vào thì trên Trang web bị XSS sẽ có một Popup yêu cầu “nhập Password” để đăng nhập hoặc đăng nhập để nhận phần thưởng giả hạn (thông tin bạn nhập vào Tác hại của XSS AttackKỹ thuật XSS Attack & chống XSS Attack là một trong những kỹ thuật cơ bản trong bảo mật Lỗi XSS được tạo ra không phải do trình độ của nhà phát triển không phải mà thông thường là do thói quen viết mã cẩu thả, thiếu sự chuyên tâmVì mã bằng ‘cơ’ nên lỗi XSS có thể gặp ở bất kỳ lập trình viên nào, nên tấn công XSS vẫn là kiểu tấn công phổ biến – hiệu quả trong tương lai Nạn nhân trực tiếp của XSS Attack chính là người dùng, nhưng nạn nhân gián tiếp và ảnh hưởng nặng nề chính là trang web bị lỗi XSS Người dùng sẽ quay lại với Trang web sau khi bị tấn công, ăn cắp dữ liệu… Nếu mã độc được đưa vào cơ sở dữ liệu (Stored XSS) thì Google và các trình duyệt sẽ chặn cửa luôn trang web hoặc toàn bộ Trang web 3. 3 Giả mạo yêu cầu trên nhiều trang web (CSRF/ XSRF)Cách thức tấn công CSRF dễ bị nhầm lẫn với XSS, vì nó sử dụng thủ thuật lừa đảo người dùng thực hiện một nhiệm vụ mà chỉ có họ mới có quyền thực hiện Tuy nhiên, với XSS – kẻ tấn công thực hiện lệnh bằng JS ngay trên trình duyệt người dùng. Còn với CSRF – kẻ tấn công gửi lệnh tới để lừa đảo người dùng thực thi – lệnh này có thể là nhiệm vụ thực thi trên Máy chủ Cross Site Request Forgery – Nguồn GbthackersVí dụ, bạn đang đăng nhập vào https. //wpbanquyen. com, hacker sẽ gửi cho bạn một liên kết như sau https://wpbanquyen.com/account?new_password=abc123 Sau khi nhấp vào liên kết, bạn đã thực hiện đổi pass sang abc123 mà không biết, lệnh này chỉ có bạn khi đăng nhập mới có quyền thực thi. The is hacker used pass new to login to your account Cách này cũng được sử dụng để sử dụng tắt tiền. Ví dụ bạn đang đăng nhập vào tài khoản tại Ngân hàng Vietcombank, và khi đó, hacker bằng cách nào đó gửi cho bạn một đường liên kết với một cái ảnh (được đặt kích thước 0. 0 để ẩn tấm ảnh đi) Khi nhấp vào liên kết này, bạn thực hiện lệnh chuyển 1000 vào tài khoản vuihocweb trên cùng hệ thống ngân hàng Vietcombank… Hiện nay các Website đều có cơ chế chống tấn công CSRF, nhưng vẫn còn vô số trang nhã để hacker lợi dụng, nên cuộc chiến bảo mật luôn rất căng thẳng Lỗi CSRF trên WordPress 5. 0. xĐiển hình mới đây là phiên bản WordPress 5. 0. x, lỗi CSRF cho phép hacker đăng tải bình luận đính kèm đường dẫn (tính năng pingback/trackpack). Nếu quản trị viên – Administrator click vào đường link đó, sẽ thi hành lệnh mà hacker muốn với quyền Administrator Lỗi bảo mật này còn có hiệu lực với những user quyền Editor. Vì các quyền Editor, Adminstrator có thể thực hiện các bình luận với các thẻ HTML như , WordPress có an toàn không?Bảo mật trang webPhương pháp bảo mật WordPress toàn tậpBảo mật trang webCác loại phần mềm độc hại & hiện tượng Trang web bị nhiễm mã độc5 BÌNH LUẬN
|