Namazu-devel-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 2.0.8pre1 (Re: Namazu v2.0.7 にクロスサイトスクリプティング脆弱性)



竹迫です。

On Tue, 27 Nov 2001 17:16:10 JST
knok@xxxxxxxxxxxxx (NOKUBI Takatsugu) wrote:
> <200111270800.fAR80tF02895@xxxxxxxxxxxxxxxxxxxxxxxxxxx>の記事において
> taca@xxxxxxxxxxxxxxxxxxxxxxさんは書きました。
> 
> >> 1.3系は、既に保守は終わっているのだと思いますが、できれば公式なパッチ
> >> があると幸せになるところも多いのではないでしょうか。
> 
>   とりあえず 1.3 用のパッチを書いてみました。チェックはしていませんの
> で、どなたか試してみていただけると嬉しいです。

野首さん、ありがとうございます。早速試してみましたが、

output.c: In function `put_query':
output.c:28: parse error before `void'
output.c:38: `i' undeclared (first use in this function)
output.c:38: (Each undeclared identifier is reported only once
output.c:38: for each function it appears in.)
output.c:39: `n' undeclared (first use in this function)
make: *** [output.o] エラー 1

というエラーメッセージが出て、コンパイルできませんでした。(^^;

src/output.c を 以下のパッチのように変更するとよいと思います。

取り急ぎ、ご報告まで。

--
  広島市立大学 情報科学部 情報機械システム工学科 知能ロボット講座
     竹迫 良範 <takesako@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>



diff -urN namazu-1.3.0.11/src/output.c namazu-1.3.0.12/src/output.c
--- namazu-1.3.0.11/src/output.c	Wed Jan 26 22:38:51 2000
+++ namazu-1.3.0.12/src/output.c	Tue Nov 27 17:16:48 2001
@@ -13,8 +13,15 @@
 	if (!strncmp(qs, "whence=", 7)) {
 	    printf("whence=%d", w);
 	    for (qs += 7; isdigit(*qs); qs++);
-	} else
-	    fputc(*(qs++), stdout);
+	} else {
+	    /* '"' is converted to entities "&quot;" */
+	    if (*qs == '"') {
+		fputs("&quot;", stdout);
+	    } else {
+		fputc(*qs, stdout);
+	    }
+	    qs++;
+	}
     }
 }