Links - Typecho友情鏈接插件

    一款Typecho友情鏈接插件

    這是一款算得上是一款Typecho博客必裝的插件了,可以方便的為你的博客添加友情鏈接功能。

    本版本的友情鏈接可以支持以下的功能:
    1、方便地在側邊欄添加友情鏈接。
    2、支持兩種輸出方式。一種為函數輸出方式,主要用于側邊欄的友情鏈接,或者模板開發者設計的友情鏈接模板等。另一種方式為HTML標簽式輸出,主要方便用戶建立自己的友情鏈接頁面。
    3、支持文字鏈接、圖片鏈接、圖文混合鏈接等。內設這三種默認的輸出方式,支持自定議設定輸出規則。
    4、支持鏈接分類,方便管理。
    5、支持增加自定義字段,方便用戶做一些個性擴展。

    使用幫助
    插件的安裝:
    解壓至插件目錄后,激活即可。
    如果已經安裝舊版本的本插件,需要禁用后重新激活。

    友情鏈接插件主要有兩種調用方式。
    第一種為函數調用法。函數的原型為:

    output($pattern=NULL, $links_num=0, $sort=NULL)

    其中,$pattern是輸出規則。輸出規則是Links插件的一種特殊語法。使用輸出規則,可以定制出屬于自己的鏈接輸出方式。例如:

    <li><a href="{url}" title="{title}" target="_blank">{name}</a></li>

    這就是一個輸出規則的例子。經過插件解析后,{url}將會被替換成鏈接地址,{title}將會被替換鏈連描述,{name}將會被替換成鏈接名稱。
    Links插件目前支持的輸出規則有:

    {lid}鏈接在數據表中存放的ID<br />
    {url}將會被替換成鏈接地址<br />
    {sort}鏈接的分類名稱<br />
    {title}{description}將會被替換鏈連描述,兩者效果一樣<br />
    {name}將會被替換成鏈接名稱<br />
    {image}將會被替換成鏈接圖片<br />
    {user}自定義字段

    插件自帶三種輸出規則:顯示文字、顯示圖片及圖文混排。
    當$pattern值為NULL或SHOW_TEXT時,則規則為顯示文字。

    <li><a href="{url}" title="{title}" target="_blank">{name}</a></li>\n

    當$pattern值為SHOW_IMG時,則規則為顯示圖片。

    <li><a href="{url}" title="{title}" target="_blank"><img src="{image}" alt="{name}" /></a></li>\n

    當$pattern值為SHOW_MIX時,則規則為顯示圖片和文字

    <li><a href="{url}" title="{title}" target="_blank"><img src="{image}" alt="{name}" /><span>{name}</span></a></li>\n

    $links_num是用于控制鏈接輸出的條數的。當$links_num為缺省值0時,表示不進行限制,輸出滿足條件的所有鏈接。

    $sort用于指定輸出的鏈接類別,以實現鏈接的分類輸出。缺省值NULL表示輸出所有類別的鏈接。

    第二種輸出為HTML標簽調用法??梢栽谖恼禄蝽撁嬷屑尤際TML標簽來實現鏈接的調用。
    其調用原型為:

    <links $links_num $sort>$pattern</links>


    $links_num $sort $pattern的功能及缺省值與第一種一樣。不過,為了$links_num$sort缺省值的識別,建議$sort采用的命名方式為:以字母開頭,僅包括字母和數字。

    使用向導:在側邊欄添加友情鏈接

    在0.8默認主題上,已經集成了本插件的調用接口。因此,不需要任何的修改即可直接使用。如果主題沒有本插件接口,可按照以下方式進行調用。
    最簡單的調用方式為:

    <?php Links_Plugin::output(); ?>

    此時,會列出所有的鏈接。
    如果想調用的為圖片鏈接,則調用方式為:

    <?php Links_Plugin::output("SHOW_IMG"); ?>

    如果是圖文的混合鏈接,則調用方式為:

    <?php Links_Plugin::output("SHOW_MIX"); ?>

    如果想限制側邊欄的鏈接數量,比如說為10個,則可調用:

    <?php Links_Plugin::output("SHOW_TEXT", 10); ?>

    圖片鏈接依此類推。

    如果想列出某個類別的鏈接,則可調用:

    <?php Links_Plugin::output("SHOW_TEXT", 0, "testsort"); ?>

    使用向導:建立獨立的友情鏈接頁面
    建立獨立的友情頁面,可以直接用類似建立側邊欄的方式,在模板設計階段,就設計好鏈接模板。也可以在后臺的頁面創建進行鏈接引用。

    最簡單的引用方式為:
    <links></links>
    如果想調用的為圖片鏈接,則調用方式為:

    <links>SHOW_IMG</links>

    如果是圖文的混合鏈接,則調用方式為:

    <links>SHOW_MIX</links>

    如果想限制側邊欄的鏈接數量,比如說為10個,則可調用:

    <links 10>SHOW_TEXT</links>

    圖片鏈接依此類推。
    如果想列出某個類別的鏈接,則可調用:

    <links 0 testsort></links>

    也可以用

    <links testsort></links>

    不過,后者要求分類必須以字母開頭。

    最后要注意的是:分類名只能包含字母及數字!

    插件 Links 越權漏洞

    趁著這幾天學校剛開學能有稍微有多一點空余時間,便對博客的插件進行了一次檢查維護。當維護到友鏈插件 Links 時,留意到一個比較奇怪的問題,在插件目錄下負責處理后臺管理友鏈請求的 Action.php 之中的全部方法沒有做任何權限驗證,一開始我以為 Typecho 本身會對這些請求作相應認證工作,但是經過一些測試之后證實這是一個允許越權以及表單欺騙的漏洞。

    所有 Links 插件版本為 1.1.1 或之前的用戶都可能受到本漏洞影響。

    發現 Links 新增友鏈表單項目未做過濾,可以配合此漏洞實施跨站攻擊,請受影響用戶立即檢查并修補。

    漏洞修補

    當務之急是須封堵漏洞入口,亦即是對友鏈管理操作添加權限驗證。為了配合 Links 插件原生設定為僅管理員可進入友鏈管理頁面的這一設置,則現在需要把 Action.php 中的 action() 方法也限制為僅管理員可用。

    具體操作很簡單,只需在 action() 方法內的開頭位置插入下列代碼即可。

    $user = Typecho_Widget::widget('Widget_User');
    $user->pass('administrator');

    漏洞復現

    我找了一個博客使用 Typecho 并且安裝了 Links 插件的好友測試了一下,首先打開自己博客后臺的友鏈管理面板,用開發者工具把編輯鏈接表單 action 屬性中的域名改成好友網站的域名,再點擊提交。

    Links - Typecho友情鏈接插件

    執行提交后,雖然會因為未登錄而跳轉回到對方的博客后臺登錄頁面,但可見頁面上方仍然出現了操作成功的提示:“鏈接 XXX 已經被增加”,證明添加友鏈的操作已經繞過了權限驗證被順利執行。

    跨站測試

    我們可以先來做一個最簡單的測試,利用插件新增友鏈表單,添加一個“鏈接名稱”為 <script>alert('test')</script>的鏈接。在鏈接被添加后即可見頁面出現對應的彈出對話框,也就是說添加的 JS 代碼被執行了。

    Links - Typecho友情鏈接插件

    我接下來做的幾個測試證實,當博客管理員訪問受攻擊的友鏈管理頁面,可以在自身不知情的情況下被他人作出獲取客戶端 Cookie、刪除文章、更改博客配置等高危動作,具體代碼就不貼出來了。說明插件對表單提交內容的過濾工作未完善;而且友鏈管理頁面表單的“鏈接名稱”一項對應的數據庫字段數據類型為 varchar(200),此處也給攻擊者留下了很大的發揮空間。

    最后

    如果發現插件友鏈管理頁面出現不明條目,建議先馬上將其刪除后修改后臺管理密碼。

    下載權限
    查看
    • 免費下載
      評論并刷新后下載
      登錄后下載
    • {{attr.name}}:
    您當前的等級為
    登錄后免費下載登錄 小黑屋反思中,不準下載! 評論后刷新頁面下載評論 支付以后下載 請先登錄 您今天的下載次數(次)用完了,請明天再來 支付積分以后下載立即支付 支付以后下載立即支付 您當前的用戶組不允許下載升級會員
    您已獲得下載權限 您可以每天下載資源次,今日剩余
    Typecho

    Handsome - 一如少年般模樣Typecho主題

    2020-2-16 0:26:00

    Typecho

    Soso - 搜索增強Typecho插件

    2020-2-17 7:14:20

    ??
    Npcink上的部份代碼及教程來源于互聯網,僅供網友學習交流,若您喜歡本文可附上原文鏈接隨意轉載。
    無意侵害您的權益,請發送郵件至 1355471563#qq.com 或點擊右側 私信:Muze 反饋,我們將盡快處理。
    0 條回復 A文章作者 M管理員
      暫無討論,說說你的看法吧
    ?
    個人中心
    購物車
    優惠劵
    今日簽到
    有新私信 私信列表
    搜索
    主站蜘蛛池模板: 相泽亚洲一区中文字幕| 亚洲国产精品一区二区第一页| 3D动漫精品一区二区三区| 精品福利一区二区三| 在线免费视频一区| 亚洲国产一区二区三区| 亚洲欧美一区二区三区日产 | 亚洲国产成人一区二区三区| 国内精品一区二区三区东京| 国产亚洲福利精品一区| 无码精品人妻一区二区三区影院 | 亚洲国产AV无码一区二区三区| 精品一区二区三区电影| 一本一道波多野结衣AV一区| 国产精品亚洲不卡一区二区三区| 亚洲伦理一区二区| 亚洲视频一区在线观看| 中文字幕精品亚洲无线码一区| 三上悠亚亚洲一区高清| 成人一区二区免费视频| AV无码精品一区二区三区宅噜噜| 精品国产AⅤ一区二区三区4区 | 国产乱子伦一区二区三区| 99精品国产高清一区二区麻豆 | 精品亚洲一区二区三区在线观看| 一区二区日韩国产精品| 国产熟女一区二区三区四区五区| 精品无码国产AV一区二区三区| 国产精品无码亚洲一区二区三区 | 国产精品福利一区二区久久| 在线观看亚洲一区二区| 国产乱人伦精品一区二区| 午夜性色一区二区三区不卡视频| 无码视频一区二区三区| 视频一区二区三区人妻系列| 国产一区二区电影在线观看| 日韩精品乱码AV一区二区| 日韩动漫av在线播放一区| 无码人妻一区二区三区在线水卜樱| 亚洲AV无码一区东京热久久| 亚洲AV无码国产精品永久一区|