
base64でエンコードされたPHPソースをデコードし、
その内容を表示させるスクリプト(base64.php)を
実行すると、ブラウザには decode.txt の様に
文字化けした内容が表示されます。
元のソースを表示させる方法は無いでしょうか?
base64.php、decode.txt は以下よりダウンロードし、
検討して下さい。
================================================================
http://www.hp-toolbox.com/base64_decode.zip
================================================================
宜しくお願い致します。
No.3ベストアンサー
- 回答日時:
デコード結果を送ること自体には別に気にすることはありませんが、
ひとつ問題があります。
ここの利用規約に、質問者もしくは回答者個人を特定することのできる
情報を書いてはいけないというのがあったと記憶しています。
つまり、質問者さんがここへ送ってくれとか書いたとしても、削除対象になってしまう
可能性が大いにあるってことです。
で、デコードするPerlスクリプトについて補足すると、あれはコマンドラインに
直接書いて実行した一行野郎なので、そのままスクリプトに落とし込んでもだめです。
スクリプトにするならこんな感じ
#!/usr/bin/perl
use strict;
use MIME::Base64;
use Encode qw(encode);
use Fatal qw(open);
open my $fh, '>', 'decoded.php';
while (<>) {
$_ = decode_base64($_);
tr[123456aouie][aouie123456];
s/&#([0-9]+);/chr $1/ge;
$_ = encode('shiftjis', $_);
tr/\r//d";
print $fh $_;
}
これをdecode.pl というファイルにでもして
perl decode.pl admin.php
として実行すれば、実行したディレクトリに decoded.php というファイルに
変換結果を出力します。
Perlのバージョンが5.8以上でないと動作しませんのでその辺ご注意を。
もしこれでもだめならそのとき考えましょう。
この回答への補足
ActivePerl 5.8.8 Build 822 をインストールし、
無事にデコードすることが出来ました。
この度は本当にありがとうございました。
感謝いたします。
丁寧にご回答ありがとうございます。
早速 Vector から perl をダウンロードして
実行してみましたが、バージョンが低い(5.003_07)せいか、
以下のようなエラーコマンドが出て実行できませんでした。
================================================================
Can't locate MIME/Base64.pm in @INC at decode.pl line 3.
BEGIN failed--compilation aborted at decode.pl line 3.
================================================================
そこで、申し訳ないですが、やはりデコードしたものを
送って頂けないでしょうか?
私は HP-TOOLBOX というサイトを運営しておりまして、
このスクリプトは相互リンク集に使用しているものの一部です。
ホームページアドレスは以下の通りです。
http://www.hp-toolbox.com/
そこのお問い合わせフォームより、添付ファイルにて
お送り頂ければ幸いです。
(添付ファイルが送信できるメールフォームを設置しております。)
念のため、以下がデコードしたいスクリプトです。
================================================================
http://www.hp-toolbox.com/admin.zip
================================================================
以上、お手数をお掛けし申し訳ありませんが、
宜しくお願い致します。
No.2
- 回答日時:
いや、だから eval の中身で何しているのかよく読んでくださいということです。
その、source.php として得られたテキストにもう一段操作を加えているはずです。
perl で片付けるとこう。
#おまけで数値表現のデコードとsjisへの変換、余計なコードの除去もしましたが
>perl -MMIME::Base64 -MEncode -pe "$_=decode_base64($_); tr[123456aouie][aouie123456]; s/&#([0-9]+);/chr $1/ge; $_=Encode::encode('shiftjis', $_); tr/\r//d" admin.php
>decoded.php
結果の頭のところ。
?><?php
/////////////////////////////////////////////////////////////////////////////////////////////
///
/// リンクフィフティープラス
///
/// 名前:WebTrigger
/// 作成:2006/07/13
/// Version 1.0.2
/// 文字コード:Shift-JIS
/// 修正:
/////////////////////////////////////////////////////////////////////////////////////////////
# エラー非表示
error_reporting(0);
# Include Files
require_once('setup.php');
# Const
define(Category, 'category.dat');
define(Data , 'data.dat');
なんか90日無償とかあやしいコメントがあるんですけど、
リバースエンジニアリング(笑)しちゃっていいんですか?
この回答への補足
もしデコードしたソースを送って下さるなら、
以下のものをデコードして下さい。
================================================================
http://www.hp-toolbox.com/admin.zip
================================================================
宜しくお願い致します。
ご回答ありがとうございます。
凄いですねっ!尊敬しちゃいます。
eval の中身って言われても、イマイチ分かってないです。
申し訳ありません。
記載していただきました perl で以下のように記述し、
実行してみましたがエラーになりました。
================================================================
#!/usr/bin/perl
> perl -MMIME::Base64 -MEncode -pe "$_=decode_base64($_);
tr[123456aouie][aouie123456];
s/&#([0-9]+);/chr $1/ge;
$_=Encode::encode('shiftjis', $_);
tr/\r//d" admin.php
> decoded.php
================================================================
ド素人で申し訳ありません。
ちなみに、このスクリプトは、お金を払って購入しています。
作成者にバグの修正を依頼したところ、
多忙につき対応不可ということだったので、なんとか自分で
修正しようともがいています。
可能ならデコードしたソースを送って頂けると非常に有り難いです。
(自分でしろって?笑)
No.1
- 回答日時:
暗号化されたソースをデコードできませんか? -OKWave
http://okwave.jp/qa3600462.html
にで得られたスクリプトをよく読んでみてください。
base64_decodeした文字列を変数にセットした後に
もう一回別の文字列に対してbase64_decodeしているでしょう(でその結果をevalしてます)?
そっちのデコード結果を読めば、何をすべきかわかりますよ。
頭のところだけ見るとこんな感じ
?><?php
/////////////////////////////////////////////////////////////////////////////////////////////
///
/// リンクフィフティープラス
///
/// 名前:WebTrigger
/// 作成:2006/07/13
/// Version 1.0.2
/// 文字コード:Shift-JIS
/// 修正:
/////////////////////////////////////////////////////////////////////////////////////////////
# エラー非表示
error_reporting(0);
# Include Files
require_once('setup.php');
ご回答ありがとうございます。
http://okwave.jp/qa3600462.html
にて得られたスクリプトは以下になります。
================================================================
http://www.hp-toolbox.com/source.zip
================================================================
元々デコードしたいスクリプトは以下になります。
================================================================
http://www.hp-toolbox.com/admin.zip
================================================================
eval もしてるかもしれません。
やはり元のソースコードに復号するのは無理でしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- その他(コンピューター・テクノロジー) 画像をbase64より短くすることって出来ないのでしょうか? 3 2023/05/18 10:13
- Windows 10 パソコン初期化の件です 2 2022/06/05 11:05
- PHP HTMLのINPUTから画面表示 3 2023/04/04 21:34
- MySQL #1062 - '0' は索引 'PRIMARY' で重複しています。とでています。 1 2023/01/01 06:13
- JavaScript 指定時間になったら、WEBサイトの更新を自動で行うには…? 3 2022/04/28 22:14
- アプリ Edgeを操作するアプリについて 4 2023/05/11 22:48
- PHP PHP MySql ページング 2 2022/09/20 06:38
- MySQL MySQL,JavaScript,PHPコードの結果を表示する方法を教えてください。 1 2023/02/13 17:49
- PHP 文字列を段落で分ける方法を教えて下さい。 2 2023/03/09 10:03
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
marginの値でマイナス値を設定...
-
掲示板の$_GETで質問があります。
-
phpinfo で MySQL のバージョン...
-
style.cssのjQuery条件付きcss...
-
ファイルの書き込みについて教...
-
submitで思うようにページが遷...
-
HTML PHP ラジオボタンのイベント
-
php でqiitaのサイトにあったフ...
-
SplFileObject を利用したとき...
-
PHPの勉強してます。 配列のと...
-
BASIC認証のフォームをデザイン...
-
アップロードファイルを表示す...
-
複数のパソコンの中の1つのパソ...
-
返信機能のツリー構造の深さを...
-
PHPについて。
-
phpのheader("Location:#pos")...
-
PHPからCSVをアップロード後、m...
-
[php初心者]サイトを見てデータ...
-
phpに関わる所での、form actio...
-
ゆゆにゃ。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
HTML PHP ラジオボタンのイベント
-
phpでcookieがうまく保存されない
-
submitで思うようにページが遷...
-
PHP8を使うと、大量のWarningが...
-
PHPSpreadsheetを使って関数を...
-
PHPで画像の渡しが上手く行きま...
-
フォームで戻った際に入力済み...
-
$_SESSIONに渡した後はそのまま...
-
PostgreSQLからCSV形式でエクス...
-
htmlspecialcharsが機能してい...
-
1 OR 1=1 は どんな論理(約束事...
-
PHPのエラーの解消法について教...
-
substrの使い方について教えて...
-
PHPのセッション有効期限について
-
PHPを使って、別サイトの一部を...
-
PHPSpreadsheetによる書き出し...
-
ファイルアップロードに関して...
-
【スプレッドシート】順位のつけ方
-
BASIC認証のフォームをデザイン...
-
PHPからCSVをアップロード後、m...
おすすめ情報