Contents

Hackthebox - Neonify

Contents

Description

Link challenge tại đây

Step

Đây là giao diện chính của challenge:

https://github.com/g03m0n/pics/assets/130943529/3f26043a-4afd-4640-9b3d-70362a9a1551

Đọc source code ta có thể thấy ứng dụng chạy bằng Ruby và sử dụng ERB template để render. Đây có thể là một bài SSTI Ruby ERB Template.

Ngoài ra input còn bị regrex match với tất cả kí tự từ 0 tới 9, từ a tới z.

https://github.com/g03m0n/pics/assets/130943529/ad1762c4-f4e1-48d0-b286-f9d3c6ace1bc

Ở đây regex sẽ chỉ match từ đầu tới cuối ở trong một dòng, tức là nếu chèn vào một string bất kì rồi dùng ký tự new line (\n) để xuống dòng, rồi chèn vào payload SSTI thì sẽ exploit thành công.

Đọc thêm tại đây: https://davidhamann.de/2022/05/14/bypassing-regular-expression-checks/

Payload:

keke
<%= File.open('flag.txt').read %>

Endcode payload:

https://github.com/g03m0n/pics/assets/130943529/c8ff51d5-b2ff-4e88-b396-5f664ee793da

Chèn payload và gửi request:

https://github.com/g03m0n/pics/assets/130943529/b0a499b6-950b-487c-8907-d381ff9c98bb

Flag: HTB{r3pl4c3m3n7_s3cur1ty}