|
|
|
|
Menu |
|
|
Home |
| |
|
Discussions |
| |
|
Tools |
| |
|
Affiliates |
| |
|
Content |
| |
|
Info |
| | |
|
|
|
|
|
User Info |
|
Membership:
Latest: MichaelSnaRe
New Today: 0
New Yesterday: 0
Overall: 9144
People Online:
Visitors: 40
Members: 0
Total: 40
|
|
|
|
|
|
Full disclosure |
|
|
|
|
|
|
|
|
|
IT Security and Insecurity Portal |
|
|
[waraxe-2004-SA#031] - Multiple vulnerabilities in e107 |
|
Posted: Sat May 29, 2004 9:11 pm |
|
|
waraxe |
Site admin |
|
|
Joined: May 11, 2004 |
Posts: 2407 |
Location: Estonia, Tartu |
|
|
|
|
|
|
This tutorial fix is targeted at e107 version 0.615, but it could apply to other versions too. I dont have time to test them - so if anyone has experience with other (old) versions then let's share it here. By the way, these are fixes for only the most critical security holes:
sql injections and remote file inclusion.
I don't have enough free time at the moment to write other patches (against xss and full path disclosure). So - feel free to post your own bug fix suggestions!
Open "e107_handlers/secure_img_render.php" and find this code fragment (~line 19):
Code: |
$a=0;
while(!$mySQLserver && $a<5){
$a++;
$p.="../";
@include($p."e107_config.php");
}
|
Change the code like so:
Code: |
$a=0;
$p = '';
while(!$mySQLserver && $a<5){
$a++;
$p.="../";
@include($p."e107_config.php");
}
|
Open "content.php" and find this code fragment (~line 29):
Code: |
if($action == "content"){
$query = "content_id='".$sub_action."' ";
$page = LAN_60.":";
}
|
Replace with this:
Code: |
$query='';
if($action == "content"){
$sub_action=intval($sub_action);
$query = "content_id='".$sub_action."' ";
$page = LAN_60.":";
}
|
Open "news.php" and find this code fragment (~line 119):
Code: |
if($action == "list"){
$news_total = $sql -> db_Count("news", "(*)", "WHERE news_category=$sub_action");
$query = "news_class<255 AND (news_start=0 || news_start < ".time().") AND (news_end=0 || news_end>".time().") AND news_render_type!=2 AND news_category=$sub_action ORDER BY ".$order." DESC LIMIT $from,".ITEMVIEW;
}else if($action == "item"){
|
Add this sanityze code, so it look like this:
Code: |
if($action == "list"){
$sub_action=intval($sub_action);
$news_total = $sql -> db_Count("news", "(*)", "WHERE news_category=$sub_action");
$query = "news_class<255 AND (news_start=0 || news_start < ".time().") AND (news_end=0 || news_end>".time().") AND news_render_type!=2 AND news_category=$sub_action ORDER BY ".$order." DESC LIMIT $from,".ITEMVIEW;
}else if($action == "item"){
|
Open "usersettings.php" and find this code fragment (~ line 1):
Code: |
<?php
if(IsSet($_POST['sub_news'])){
header("location:submitnews.php");
exit;
}
|
Add this new code, so it looks like this:
Code: |
<?php
$avmsg = '';
if(IsSet($_POST['sub_news'])){
header("location:submitnews.php");
exit;
}
|
|
|
|
|
|
|
www.waraxe.us Forum Index -> How to fix
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
All times are GMT
Page 1 of 1
|
|
|
Powered by phpBB © 2001-2008 phpBB Group
|
|
|
|
|
|
|