Việc làm

Hôm qua · Hà Nội · Tại văn phòng

Senior Pentester (Red Team, Python, PowerShell, Tester)

ABBANK · Security Tester / Penetration Tester

Xem mô tả & ứng tuyển trên ITviecMô tả công việc, lương và ứng tuyển nằm ở ITviec.

10 câu hỏi có thể gặp khi phỏng vấn

Chọn theo kỹ năng và cấp của tin (Bảo mật (Security), Python, Tester / QA). Gợi ý trả lời do Drama Công Ty biên soạn để bạn ôn nhanh, không phải đề của công ty.

  1. 01Phát hiện một máy chủ có dấu hiệu bị xâm nhập. Bạn ứng phó theo các bước nào?Bảo mật (Security) · Senior

    Gợi ý trả lời

    Theo vòng đời ứng phó sự cố: chuẩn bị, phát hiện và phân tích, ngăn chặn, loại bỏ, khôi phục, rút kinh nghiệm.

    1. Xác nhận và báo cáo theo quy trình, lập nhóm xử lý, ghi mốc thời gian.
    2. Ngăn chặn: cô lập máy khỏi mạng nhưng không tắt nguồn vội, để giữ bằng chứng trong RAM.
    3. Thu thập bằng chứng: snapshot đĩa, bộ nhớ, log; giữ chuỗi bảo quản.
    4. Xác định phạm vi: tài khoản, máy khác, dữ liệu bị ảnh hưởng.
    5. Loại bỏ và khôi phục: dựng lại từ image sạch, đổi toàn bộ credential liên quan, vá lỗ hổng gốc.
    6. Sau sự cố: báo cáo, bổ sung rule phát hiện; thông báo theo nghĩa vụ pháp lý nếu lộ dữ liệu cá nhân.

    Hay sai: chỉ xoá mã độc rồi dùng tiếp máy đó.

    Ôn thêm câu hỏi Bảo mật (Security) →
  2. 02Zero Trust là gì? Bạn triển khai từng bước thế nào cho một công ty đang dùng VPN truyền thống?Bảo mật (Security) · Senior

    Gợi ý trả lời

    Zero Trust bỏ giả định "ở trong mạng nội bộ là tin cậy": mọi truy cập đều được xác thực, kiểm tra thiết bị và cấp quyền tối thiểu theo từng ứng dụng.

    Lộ trình thực tế:

    • Tập trung danh tính (SSO), bắt buộc MFA, ưu tiên loại chống phishing (passkey, FIDO2).
    • Kiểm kê tài sản và ứng dụng, phân loại dữ liệu.
    • Kiểm tra trạng thái thiết bị (đã mã hoá, đã vá, có EDR) trước khi cho truy cập.
    • Thay VPN toàn mạng bằng truy cập theo từng ứng dụng qua access proxy.
    • Phân đoạn mạng để hạn chế di chuyển ngang.
    • Ghi log mọi truy cập và giám sát liên tục.

    Người phỏng vấn muốn nghe: Zero Trust là chiến lược làm dần, không phải mua một sản phẩm.

    Ôn thêm câu hỏi Bảo mật (Security) →
  3. 03Bạn bảo mật hạ tầng cloud cho công ty thế nào? Lỗi cấu hình nào nguy hiểm nhất?Bảo mật (Security) · Senior

    Gợi ý trả lời

    Phần lớn sự cố cloud đến từ cấu hình sai và quản lý danh tính lỏng lẻo, không phải lỗ hổng của nhà cung cấp.

    Lỗi nguy hiểm hay gặp:

    • Bucket/storage để public, database mở ra Internet.
    • Access key dài hạn bị lộ, quyền quá rộng.
    • Tắt hoặc không bật log audit.

    Biện pháp:

    • IAM least privilege, ưu tiên role và credential ngắn hạn; MFA cho mọi người.
    • Guardrail cấp tổ chức chặn cấu hình nguy hiểm.
    • Bật log audit, đưa vào SIEM; dùng công cụ CSPM để phát hiện cấu hình sai liên tục.
    • Mã hoá mặc định, quản lý khoá tập trung.
    • Hạ tầng qua IaC có quét và review.

    Người phỏng vấn muốn nghe: nắm mô hình trách nhiệm chung giữa bạn và nhà cung cấp.

    Ôn thêm câu hỏi Bảo mật (Security) →
  4. 04Python quản lý bộ nhớ thế nào? Một worker Python cứ tăng RAM dần, bạn tìm nguyên nhân ra sao?Python · Senior

    Gợi ý trả lời

    CPython dùng reference counting: object bị giải phóng ngay khi số tham chiếu về 0. Bộ thu gom gc chạy thêm để dọn các vòng tham chiếu (A trỏ B, B trỏ A).

    Nguyên nhân leak hay gặp:

    • Cache toàn cục (dict, lru_cache không giới hạn) chỉ thêm không xoá.
    • Biến ở module hoặc class tích luỹ dữ liệu qua các request.
    • Đọc cả file hay cả queryset lớn vào bộ nhớ thay vì xử lý theo lô.
    • Extension C giữ bộ nhớ ngoài tầm GC.

    Cách điều tra:

    • tracemalloc: chụp snapshot hai thời điểm rồi so sánh dòng code cấp phát nhiều nhất.
    • Theo dõi RSS theo thời gian, thử tái hiện với một loại request.
    • Giải pháp tạm: cấu hình worker tự khởi động lại sau N request (Gunicorn max_requests, Celery max_tasks_per_child).

    Người phỏng vấn muốn nghe: bạn đo trước khi đoán, và biết giải pháp tạm không thay cho việc tìm nguyên nhân.

    Ôn thêm câu hỏi Python →
  5. 05Một API viết bằng Python (Django hoặc FastAPI) phản hồi chậm. Bạn tối ưu theo thứ tự nào?Python · Senior

    Gợi ý trả lời

    Đo trước, tối ưu chỗ tốn nhất trước. Phần lớn trường hợp nút thắt là DB và gọi mạng, không phải tốc độ của Python.

    1. Đo: APM hoặc tracing (OpenTelemetry) để biết thời gian nằm ở DB, API ngoài hay code. Profile bằng py-spy (gắn vào process đang chạy) hoặc cProfile.
    2. DB: xử lý N+1, thêm index phù hợp, chỉ lấy cột cần (only, values), phân trang.
    3. Cache: Redis cho dữ liệu đọc nhiều, ít đổi; nhớ chiến lược invalidate.
    4. Việc nặng hoặc không cần trả ngay (gửi email, xuất file): đẩy sang Celery hoặc queue.
    5. Gọi nhiều API ngoài: chạy song song, đặt timeout.
    6. Cuối cùng mới tới tối ưu thuật toán, hoặc đưa đoạn nặng CPU sang thư viện C hay service khác.

    Hay sai: viết lại sang async hoặc đổi ngôn ngữ trước khi biết thời gian thực sự bị tiêu ở đâu.

    Ôn thêm câu hỏi Python →
  6. 06Test automation của bạn hay bị flaky (lúc pass lúc fail). Bạn xử lý thế nào?Tester / QA · Senior

    Gợi ý trả lời

    Flaky test làm team mất niềm tin vào automation, nên cần xử lý có hệ thống chứ không chỉ bấm chạy lại.

    Nguyên nhân thường gặp:

    • Chờ bằng sleep cứng thay vì chờ điều kiện (element hiển thị, API trả về).
    • Locator dễ vỡ (XPath dài, phụ thuộc thứ tự); nên dùng data-testid hoặc role.
    • Dữ liệu test dùng chung, test phụ thuộc thứ tự chạy.
    • Môi trường test không ổn định, dịch vụ bên thứ ba.

    Cách làm:

    • Theo dõi tỷ lệ fail từng test, cách ly test flaky khỏi pipeline chặn release cho tới khi sửa.
    • Mỗi test tự tạo và dọn dữ liệu của mình; mock dịch vụ ngoài khi phù hợp.
    • Lưu screenshot, video, trace khi fail để tìm nguyên nhân.

    Hay sai: cấu hình retry thật nhiều để che lỗi.

    Ôn thêm câu hỏi Tester / QA →
  7. 07Công ty có ngân sách bảo mật hạn chế. Bạn ưu tiên làm gì trước và đo hiệu quả thế nào?Bảo mật (Security) · Senior

    Gợi ý trả lời

    Ưu tiên theo rủi ro: chặn những con đường tấn công phổ biến nhất với chi phí thấp nhất trước.

    Thứ tự hợp lý:

    1. Kiểm kê tài sản và dữ liệu quan trọng: không biết có gì thì không bảo vệ được.
    2. MFA cho email, VPN, tài khoản quản trị, cloud.
    3. Quản lý bản vá, nhất là hệ thống lộ ra Internet.
    4. Backup tách rời, có diễn tập khôi phục.
    5. EDR trên máy trạm và server, log tập trung.
    6. Đào tạo nhận diện phishing, quy trình báo cáo dễ dàng.

    Đo lường: tỷ lệ tài khoản có MFA, thời gian vá lỗ hổng nghiêm trọng, thời gian phát hiện và xử lý sự cố, kết quả diễn tập.

    Người phỏng vấn muốn nghe: nói được ngôn ngữ rủi ro kinh doanh với ban lãnh đạo.

    Ôn thêm câu hỏi Bảo mật (Security) →
  8. 08Xác thực (authentication) khác phân quyền (authorization) thế nào? Kể lỗi phân quyền hay gặp.Bảo mật (Security)

    Gợi ý trả lời

    Authentication trả lời "bạn là ai"; authorization trả lời "bạn được làm gì". Lỗi phân quyền (Broken Access Control) đứng đầu OWASP Top 10 trong các bản gần đây.

    Lỗi hay gặp:

    • IDOR: đổi /orders/123 thành /orders/124 xem được đơn người khác vì server không kiểm tra chủ sở hữu.
    • Chỉ ẩn nút trên giao diện mà API vẫn cho gọi.
    • Tin vào role gửi từ client.

    Cách phòng:

    • Kiểm tra quyền ở server cho mọi request, mặc định từ chối.
    • Tập trung logic phân quyền vào một chỗ (middleware, policy).
    • Viết test cho trường hợp người dùng A truy cập dữ liệu của B.
    Ôn thêm câu hỏi Bảo mật (Security) →
  9. 09Dùng JWT cho xác thực API cần lưu ý những gì?Bảo mật (Security)

    Gợi ý trả lời

    JWT là token tự chứa thông tin, server kiểm tra bằng chữ ký mà không cần tra DB; điểm yếu là khó thu hồi trước khi hết hạn.

    • Luôn kiểm tra chữ ký với thuật toán cố định phía server; từ chối alg: none.
    • Kiểm tra exp, iss, aud.
    • Access token sống ngắn (vài phút), kèm refresh token có thể thu hồi và xoay vòng.
    • Payload chỉ base64, ai cũng đọc được: không chứa dữ liệu nhạy cảm.
    • Trên trình duyệt, cân nhắc cookie HttpOnly thay vì localStorage để giảm hậu quả nếu có XSS.
    • Khoá ký đủ mạnh, quản lý trong secret manager.

    Người phỏng vấn muốn nghe: hiểu đánh đổi giữa JWT và session lưu phía server.

    Ôn thêm câu hỏi Bảo mật (Security) →
  10. 10Điểm yếu của bạn là gì?Câu hỏi hành vi & văn hoá

    Gợi ý trả lời

    Chọn điểm yếu thật, không chí mạng với vị trí, và cho thấy bạn đang cải thiện.

    Cấu trúc: điểm yếu, ảnh hưởng đã gặp, việc bạn đang làm để khắc phục, tiến bộ đến nay.

    Câu mẫu: "Trước đây em hay ngại hỏi khi bị kẹt, tự loay hoay quá lâu, có lần làm trễ task. Giờ em tự đặt giới hạn: kẹt quá một hai giờ mà không có hướng thì em hỏi đồng đội, kèm những gì đã thử. Từ khi làm vậy em xong việc đúng hạn hơn và học được nhanh hơn từ người khác."

    Ví dụ khác có thể dùng: chưa quen nói trước đám đông, tiếng Anh nói chưa trôi chảy, hay ôm việc.

    Hay sai: "Điểm yếu của em là quá cầu toàn" (nghe như né câu hỏi), hoặc nêu điểm yếu là kỹ năng cốt lõi của vị trí.

    Ôn thêm câu hỏi Câu hỏi hành vi & văn hoá →

Bạn đã phỏng vấn ở ABBANK?

Kể lại các vòng và câu hỏi đã gặp (ẩn danh) để người sau ôn đúng trọng tâm.

Chia sẻ kinh nghiệm phỏng vấn