thảo luận Thảo luận kỹ thuật vụ BKAV bị hack tất cả vào đây

đoạn query username pass đây
View attachment 716678
tôi k rành bên sql alchemy hay flask
nhưng thấy có vẻ vẫn là prepared statement mà nhỉ
hàm đó đây
View attachment 716680
anh nào làm với 2 thằng này giải thích tôi với. hay là chunxong giấu nghề đây
BdgiW7R.png
quote lại cái còm của tôi bên thớt kia
anh nào rành giải thích giúp
 
Hello các fen, tôi cũng dân dev nhưng thợ gõ thôi chứ cũng ko học rộng hiểu sâu lắm đâu nên tôi thắc mắc tí:
Trong video chunxong dùng đoạn payload
Code:
123456a@A' or 1=1--
để demo sqli vào bif
Hiện tại hắn đã confirm là không đơn giản như vậy mà phải bypass được đoạn check regex trước
1629224371492.png

Vậy với code của bif như này thì gửi payload vào như nào để chạy được sqli
1629224123478.png

Mong các fen giải thích cho tôi

Ông G4mm4 có gợi ý như thế này:
1629224546796.png
 
hoidabunko said:
Nhức đầu mấy ông pass raw với ko raw quá. Đứng trên cương vị system admin, tui thấy lưu raw trên server local ko có vấn đề gì. Chỉ vấn đề sql injection ko bàn vì quá cũ, cả nước chắc mỗi kave bị, giờ server tui lưu connection string đến db có user với pass raw trên đó chặn port sql ko cho truy cập khác từ ip server đó, dựng proxy chặn đăng nhập kiểu brute force attack, lưu log.srv tui tắt login bằng password root, chỉ login bằng ssh key, nạp ssh key của mỗi người được quyền vào server lên. Sau đó ssh key của user tui bắt đặt thêm pass preshare key. Có 10 thằng hacker cũng ko hack được. Đó là trường hợp lưu raw trên local. Login bằng api thì nên mã hóa. Đơn giản ko. Đừng nghĩ it cao sang, như cái nhà mình thôi. Nhà có 1 cửa vào và cửa đó mình quản lý được là được
 
hoidabunko said:
Nhức đầu mấy ông pass raw với ko raw quá. Đứng trên cương vị system admin, tui thấy lưu raw trên server local ko có vấn đề gì. Chỉ vấn đề sql injection ko bàn vì quá cũ, cả nước chắc mỗi kave bị, giờ server tui lưu connection string đến db có user với pass raw trên đó chặn port sql ko cho truy cập khác từ ip server đó, dựng proxy chặn đăng nhập kiểu brute force attack, lưu log.srv tui tắt login bằng password root, chỉ login bằng ssh key, nạp ssh key của mỗi người được quyền vào server lên. Sau đó ssh key của user tui bắt đặt thêm pass preshare key. Có 10 thằng hacker cũng ko hack được. Đó là trường hợp lưu raw trên local. Login bằng api thì nên mã hóa. Đơn giản ko. Đừng nghĩ it cao sang, như cái nhà mình thôi. Nhà có 1 cửa vào và cửa đó mình quản lý được là được
Lưu raw pass là sai không chỉ về bảo mật mà còn về đạo đức, vì users có xu hướng dùng chung pass cho nhiều hệ thống (kể cả dân tech). Lưu raw pass db admin có thể truy cập được tài khoản của users.
 
Lưu raw pass là sai không chỉ về bảo mật mà còn về đạo đức, vì users có xu hướng dùng chung pass cho nhiều hệ thống (kể cả dân tech). Lưu raw pass db admin có thể truy cập được tài khoản của users.
đúng rồi bảng user pass phải mã hóa vào, nó là vấn đề về đạo đức
còn connection string thì thôi lưu raw cũng đc chứ nhỉ, dùng user riêng cho mỗi db, sql bind về 127.0.0.1, drop port sql là cũng chặn đc rồi chứ
 
Hello các fen, tôi cũng dân dev nhưng thợ gõ thôi chứ cũng ko học rộng hiểu sâu lắm đâu nên tôi thắc mắc tí:
Trong video chunxong dùng đoạn payload
Code:
123456a@A' or 1=1--
để demo sqli vào bif
Hiện tại hắn đã confirm là không đơn giản như vậy mà phải bypass được đoạn check regex trước
View attachment 716704
Vậy với code của bif như này thì gửi payload vào như nào để chạy được sqli
View attachment 716703
Mong các fen giải thích cho tôi

Ông G4mm4 có gợi ý như thế này:
View attachment 716705

Cái waf trong con bif kia nó có chức năng lọc request, nếu data có chứa đoạn nào kiểu xss hay sqli nó chặn luôn. Hoặc ông nào bắn request liên tục nó cũng chặn

Gửi từ Xiaomi MI 8 bằng vozFApp
Tóm lại là ông có thể show cái đoạn code trong bif nó filter sqli kiểu gì không? Tôi thấy ảnh ông đăng vẫn chỉ là cái đoạn
Code:
re.compile("^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#\$%\^&\*])(?=.{8,}$)")
chứ có gì thêm đâu? Nếu có thêm thì bàn tiếp, còn tóm lại đến hiện tại thì:
1) Bypass cái regex check pass kia: dùng 123456a@A' or 1=1-- ok nhé
2) Đã có câu query sqli, nhìn tiếp vào code handle phần check login của ông này post:

đoạn query username pass đây
View attachment 716678
tôi k rành bên sql alchemy hay flask
nhưng thấy có vẻ vẫn là prepared statement mà nhỉ
hàm đó đây
View attachment 716680
anh nào làm với 2 thằng này giải thích tôi với. hay là chunxong giấu nghề đây
BdgiW7R.png
-> chả có chỗ nào là prepared statement ở đây cả, sqli ok nhé.
 
đúng rồi bảng user pass phải mã hóa vào, nó là vấn đề về đạo đức
còn connection string thì thôi lưu raw cũng đc chứ nhỉ, dùng user riêng cho mỗi db, sql bind về 127.0.0.1, drop port sql là cũng chặn đc rồi chứ
Key vault thiết kế chuẩn thì thường chỉ cho set chứ không cho xem.
À mới xem lại thì thằng azure vẫn cho xem secrets :sweat: , nhưng ở dưới DB thì vẫn phải encrypt lại.
 
Hello các fen, tôi cũng dân dev nhưng thợ gõ thôi chứ cũng ko học rộng hiểu sâu lắm đâu nên tôi thắc mắc tí:
Trong video chunxong dùng đoạn payload
Code:
123456a@A' or 1=1--
để demo sqli vào bif
Hiện tại hắn đã confirm là không đơn giản như vậy mà phải bypass được đoạn check regex trước
View attachment 716704
Vậy với code của bif như này thì gửi payload vào như nào để chạy được sqli
View attachment 716703
Mong các fen giải thích cho tôi

Ông G4mm4 có gợi ý như thế này:
View attachment 716705
Thím để ý nhé, có 2 case đáng bàn ở đây:
  • Nếu nó không pass regex thì response sẽ có mấy dấu * ở 2 đầu.
  • Nếu pass regex nhưng sai mật khẩu thì sẽ không có dấu * ở response
Dựa vào đây chunxong sẽ biết được nó nhảy vào 2 nhánh khác nhau và biết cái nào pass, cái nào không pass regex
 
Thím để ý nhé, có 2 case đáng bàn ở đây:
  • Nếu nó không pass regex thì response sẽ có mấy dấu * ở 2 đầu.
  • Nếu pass regex nhưng sai mật khẩu thì sẽ không có dấu * ở response
Dựa vào đây chunxong sẽ biết được nó nhảy vào 2 nhánh khác nhau và biết cái nào pass, cái nào không pass regex
Cái fen nói là cách để chunxong đoán pattern regex, còn ông kia thì vẫn cứ thắc mắc là gửi payload như nào để pass được cái regex, rõ ràng là 123456a@A' or 1=1-- chứ còn gì nữa :v
 
Back
Top