ايمپورت خودكار rss در محتواي مامبو (هك)
من در سايت esirjan.com متوجه شدم مطالب سايت ايرنا دقيقا به صورت كامل در محتواي سايت به صورت خود كار قرار ميگيره
وقتي سرچ كردم ديدم اين به دونه هك هست كه هم براي مامبو هست هم جوملا به اسم RSS 2 Mambo v1[1].1
داخلش يه فايل تكست بود كه اينجا مي ذارمش يكي دقيقان بگه بايد چكار كنيم يكم پيچيده بود!
محتواي فايل تكست :
<?php
// Sample RSS feeds to Joomla / Mambo importing script, hacked together by Max Soukhomlinov, [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید]
//
// This script requires XML_RSS and PHP Pear Libraries
//
// There is an issue on some shared hosting sites that this will fail if ran via cron however if browsed to, it works just fine.
// this has to do with permissions, your hosting website uid does not have same rights as apache uid (under which script is executed when your browse to it)
// I am at the moment trying to work out a solution to it, if you can think of something that will help, please drop me a line.
// Happy importing :-)
//
/** the PEAR XML_RSS object/class is required */
require 'RSS.php';
/** DATABASE Configuration */
define("DB_HOSTNAME","localhost&quo t;); //Insert your DB server name here
define("DB_USERNAME","username" ;); //DB username here
define("DB_PASSWD","password") ; // DB password here
define("DB_DATABASE","dbname") ; //DB name here
/** pull list of remote RSS feeds, via a remote RSS feed. */
$rss_feed = & new XML_RSS('[مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید]); //Insert your URL here
//$rss_feed = & new XML_RSS('feed.xml'); //Used this for testing with local file, a bit quicker
// Change to your email address, if you do not want notifications, rem out line 187.
$admin_email = 'youremailaddresshere';
// Should not need to change anything from here onwards unless you know some basic php
// The advanced options are: A) Alter title formatting (lines 68 and 84);
// B) Alter introtext/maintext formatting (lines 85 and 86);
// C) Change formatting of notification email (lines 92-97 for per new item formatting and 164-182 for main body formatting).
// Next two lines are for duration runtime, which is reported via email
$starttime = explode(' ', microtime());
$starttime = $starttime[1] + $starttime[0];
// Function for shortening articles based on maximum length
function str_stop($string, $max_length){
if (strlen($string) > $max_length){
$string = substr($string, 0, $max_length);
$pos = strrpos($string, " ");
if($pos === false) {return substr($string, 0, $max_length)."...";}
return substr($string, 0, $pos)."...";
}else{return $string;}
}
/** create the database connection object */
$obj_db = @mysql_connect(DB_HOSTNAME,DB_USERNAME,DB_PASSWD) or die (mysql_error());
/** select the intended database */
@mysql_select_db(DB_DATABASE,$obj_db) or die (mysql_error());
$rss_feed->parse();
$num_articles=0; //Variable used to count number of new articles, displayed in an email below
// Here we make sure that feed articles do not already exist in DB
// this uses title names, make sure to use the same title formatting here as you will use further down
// state = 1 not trashed
foreach ($rss_feed->getItems() as $item) {
$obj_query = @mysql_query("
SELECT
COUNT(id) AS link_match
FROM
mos_content
WHERE
title = '". str_stop(addslashes($item['title']),100) ."'
AND
state = '1'
",$obj_db) or die(mysql_error());
$int_count = @mysql_fetch_assoc($obj_query) or die(mysql_error());
mysql_free_result($obj_query);
if ($int_count['link_match'] == 0) {
$num_articles = $num_articles +1;
/**
* REFORMATTING CODE
**/
$titletext = str_stop(addslashes($item['title']),100);
$introtext = str_stop(addslashes($item['description']), 280); //Shorten description to 280 chars...
$maintext = addslashes($item['description']);
$publishdate = date('Y-m-d H:i:s', strtotime($item['pubdate'])); //Convert feed article publish date to mambo publish date
$publishdate_readable = date('d-m-Y, H:i', strtotime($item['pubdate'])); // I didnt like the standard date format, this is for email field
// the following used to notify admin of new articles (via email), this is parsed with each article
$feed_summary .= '
<tr>
<td>'. $publishdate_readable .'</td>
<td>'. $titletext .'</td>
<td>'. $introtext .'</td>
<td>'. $maintext .'</td>
</tr>
';
/**
* INSERT DATA
*/
// VERY IMPORTANT, changes will be required here for sure!
// THE attribs below are specific to my site but you can blank it all if you wish (default parameters)
// with attribs, make sure to type each on new line (ie line break as shown below otherwise mambo will not understand it)
// Ordering number, be fault it will be #99, i am yet to implement an auto detection as mambo/joomla does on its own
// for now all articles will be #99 so when publishing sort them by published date
@mysql_query("
INSERT INTO mos_content (
title,
introtext,
`fulltext`,
state,
sectionid,
mask,
catid,
created,
created_by,
checked_out,
publish_up,
attribs,
version,
access,
ordering
) VALUES (
'". $titletext ."',
'". $introtext ."',
'". $maintext ."',
'1',
'YOUR SECTION ID HERE',
'0',
'YOUR CATEGORY ID HERE',
'". $publishdate ."',
'ID OF THE USER YOU WANT TO BE SHOWN AS AUTHOR',
'0',
'". $publishdate ."',
'introtext=0
createdate=1',
'1',
'0',
'99'
)
",$obj_db) or die(mysql_error());
}
}
if ($obj_db) {
@mysql_close($obj_db);
}
// if we have downloaded new feeds, lets create a report for the admin
if ($feed_summary)
{
// runtime check, to tell admin on how long this script has been running, might be handy to know
$mtime = explode(' ', microtime()); $totaltime = $mtime[0] + $mtime[1] - $starttime;
/** EMAIL variables */
$email_subject = 'Your subject here';
$email_body = '
<html>
<table width="100%" border="0" cellspacing="1" cellpadding="5" bgcolor="#999999">
<tr>
<th bgcolor="#FFFFFF">Date</th>
<th bgcolor="#FFFFFF">Heading</th>
<th bgcolor="#FFFFFF">Intro text</th>
<th bgcolor="#FFFFFF">Full text</th>
</tr>
'. $feed_summary .'
<tr>
<td colspan="4" bgcolor="#FFFFFF">
<strong>This message was automatically generated by the rss importing process on your website.</strong><br /><br />
<strong>Script</strong>: '. getcwd() .'/yourscriptnamehere.php<br />
<strong>RSS Feed source:</strong> [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] />
<strong>Current date:</strong> '. date(r) .'<br />
<strong>Script execution time:</strong> '. round($totaltime,3) .' seconds.
</td>
</tr>
</table>
</html>
';
$from = "MIME-Version: 1.0\n";
$from .= "Content-type: text/html; charset=iso-8859-1\n";
$from .= "From: From Address name <script@sitename.com>\n";
mail($admin_email, $email_subject, $email_body, $from);
}
?>
Re: ايمپورت خودكار rss در محتواي مامبو (هك)
سلام
ممنونم بابت این هک جالب .
یا علی
Re: ايمپورت خودكار rss در محتواي مامبو (هك)
[quote author=فیروزمندان link=topic=2149.msg12647#msg12647 date=1157016955]
سلام
ممنونم بابت این هک جالب .
یا علی
[/quote]
خواهش مي كنم آقاي فيروزمندان
ميشه توضيح بدين چطور بايد از اين هك استفاده كنيم ( توضيح كامل لطفاچون تا حالا از هك واسه مامبو استفاده نكردم)
با تشكر
Re: ايمپورت خودكار rss در محتواي مامبو (هك)
با سلام
یه قسمت از این فایل از ما یوزر و پسورد دیتابیس و نام دیتابیس رو میخواد که به نظر من این خودش یه مشکله.
یعنی یه جور بی احتیاطی !!!!!
یا حق
Re: ايمپورت خودكار rss در محتواي مامبو (هك)
خوب هر جا كه لازم باشه به ديتا بيس كانكت شد يوزر و پسورد لازمه! يه چيز طبيعي هست!!
Re: ايمپورت خودكار rss در محتواي مامبو (هك)
با سلام
اگه قرار باشه این اطلاعات مهم رو روی یه فایل ذخیره کرد و رو وب سایت بگذاریم که خیلی خطرناکه!!!
البته اینم باید در نظر داشته باشیم که یه مبتدی بیاد و این کار رو بکنه و حتی سطح دسترسی فایل رو هم پایین نیاره.خدا میدونه که چی میشه!!
نمونه اش ماژول CP_email که از ما یوزر و پسورد کنترل پنل رو میخواد! که دیگه خدا میدونه که چی میشه.
اینجور بی احتیاطی ها آخرش دردسر داره؟؟
یا حق
Re: ايمپورت خودكار rss در محتواي مامبو (هك)
[quote author=+[MOHAMADIZADEH]+ link=topic=2149.msg12687#msg12687 date=1157057349]
با سلام
اگه قرار باشه این اطلاعات مهم رو روی یه فایل ذخیره کرد و رو وب سایت بگذاریم که خیلی خطرناکه!!!
یا حق
[/quote]
دوست عزيز مگه فايل configure.php شما همچين حالتي رو نداره !
يه جوونمرد پيدا نشود بگه اين هك رو چه جوري نصب كنيم ؟
پاسخ : ايمپورت خودكار rss در محتواي مامبو (هك)
آقايون سابقه دار لطفا كمك كنيد و طرز استفاده از اين هك رو توضيح بدين !
پاسخ : ايمپورت خودكار rss در محتواي مامبو (هك)
سلام سیستم esirjan این نیست اما اگه دوست دارید میشه این هک را براحتی امن و با سیستم مامبو سازگار کرد
پاسخ : ايمپورت خودكار rss در محتواي مامبو (هك)
[quote author=balvardi link=topic=2149.msg13072#msg13072 date=1157895042]
سلام سیستم esirjan این نیست اما اگه دوست دارید میشه این هک را براحتی امن و با سیستم مامبو سازگار کرد
[/quote]
اگر اين هك نباشه شايد com_feedgator-0[1].4 باشه !
خوب ميشه بيشتر توضيح بدين ! هزينش؟
پاسخ : ايمپورت خودكار rss در محتواي مامبو (هك)
دوست عزیز این فایل را در پوشه components/com_rss قرار بدید
و همین طور اطلاعاتی مثل email و نام سایت و ایمیل را تغییر دهید
حالا لینک rss که می خواهید اطلاعات اون در سایتتون قرار بگیره رو به جای [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] قرار بدید
حالا شما بعد از اجرای این فایل اطلاعات این rss رو وارد content سایتتون کردید
البته یادتون نره catid و sectionid رو به مقداری تغییر بدید که می خواهید مطالب در اون مجموعه و بخش قرار بگیره
در ضمن در صورت تکرار مداوم این فایل هیچ اطلاعاتی دو بار وارد دیتابیس نمی شه
چون همون طور که در کد مشخص شده این برنامه اول چک می کنه که این مطلب قبلا در سایت قرار داده نشده باشه
برای قرار دادن اتوماتیک rss در سایت می تونید از corn استفاده کنید
پاسخ : ايمپورت خودكار rss در محتواي مامبو (هك)
[quote author=iransbs link=topic=2149.msg13123#msg13123 date=1157937070]
برای قرار دادن اتوماتیک rss در سایت می تونید از corn استفاده کنید
[/quote]
سلام
اين corn چي هست و از كجا ميتونيم پيداش كنيم؟
پاسخ : ايمپورت خودكار rss در محتواي مامبو (هك)
ببخشید هواسم نبود corn نه cron
در محیط سی پنل قسمتی به نام cron jobs وجود دارد بعد از کلیک بر روی لینک Cron jobs کار های زیر را انجام دهید
1. از دو کلید موجود بر روی standard کلیک کنید
2. خوب در قسمت Please enter an email address where output from commands run via crontab will be sent آدرس ایمیلی که خروجی فایل اجرایی را برای شما می خواهید ارسال شود را وارد کنید
3. در قسمت Command to run تایپ کنید php -q /home/USERNAME/public_html/components/com_rss/FILENAME
خوب به جای USERNAME نام کاربری ورودی cpanel خود
و به جای FILENAME نام فایل خود را وارد کنید
بعد زمان هایی که می خواهید بر این اساس فایل اجرا شود مثلا هر 5 دقیقه هر 20 دقیقه را انتخاب کنید و بر روی Save Crontab کلیک کنید
موفق و پیروز باشید
پاسخ : ايمپورت خودكار rss در محتواي مامبو (هك)
خوب ببخشيد من يه كم مشكل دارم
يعني وقتي ازcorn استفاده ميكنيم دبگه به اين هك احتياج نداريم؟
لطفا يككم بيشتر توضيح بدين ممنون