2011-06-07 25 views
0

我發現了一會後我的網站上使用的組件有一個未經過濾的參數,在WHERE條件進行如下設置:如果攻擊者能夠讀取Joomla!的數據庫,他能夠造成很大的傷害嗎?

  • 使用Joomla! 1.5,最新更新。
  • 該組件是自定義的,相當小,在閱讀源代碼後,我無法識別任何其他安全缺陷。
  • 攻擊者正在使用SQLMap完成他們的工作,因爲我在日誌中看到了它的用戶代理。
  • MySQL的版本是5.1.11
  • PHP版本5.1.4是
  • 的數據庫用戶必須在使用權限。
  • 服務器操作系統是Linux。

在我自己的盒子上嘗試相同的步驟後,我能夠讀取數據庫(因爲我不是sql注入專家,我不確定這是我所能做的)。

我的擔心主要是關於會話表,攻擊者是否能夠模仿用戶?除此之外,他有沒有機會將一些有效載荷上傳到我的服務器?

此外,他可以通過這個SELECT查詢「奇蹟般地」更新某些字段嗎? (沒有堆疊查詢可用)。

在此先感謝。

回答

3

如果您可以讀取數據庫,則可以使用SQLMap轉儲它並查找管理員密碼的哈希值。

使用該散列,攻擊者可以破解它(或者如果它是MD5,則快速找到碰撞)並登錄到您的管理員帳戶。

從那裏,您的管理員帳戶被擰緊。攻擊者擁有管理員權限,因此請考慮您的網站已死。更糟糕的是,如果Joomla就像Wordpress一樣,攻擊者可以在主題中使用自定義PHP代碼,這樣他們就可以降級到操作系統級別並修改Joomla安裝。

總之,他們可以搞砸你的服務器,因爲Joomla運行時會執行任意PHP代碼。

+0

實際上,用平均視頻卡破解該數據庫上的大多數密碼將不會超過2天。感謝您的回覆。 – 2011-06-07 02:23:07

+0

沒問題。我非常驚訝於SQLMap的強大功能,因爲我不知道SQL注入*很糟糕。 – Blender 2011-06-07 02:30:37