web-dev-qa-db-ja.com

ソフトウェアはどのようにハッキングされ、パッチが適用されますか?

ほとんどすべての有名で優れたソフトウェアがクラックされ、パッチが適用されているのを見るのは本当に奇妙です。アドビソフトウェア、ウィンドウズ、IDMおよび他の多く...

本当に簡単ですか?彼らが使用するテクニックは何ですか?ソフトウェアにパッチやクラックが発生しないようにするにはどうすればよいですか?

編集:

さて、私はあなたのソフトウェアを保護する方法が非常に少ないという現在の答えを明確にしています "....私が今まで見た唯一の方法は、外部サーバーのどこかに重要なロジックを置くことです... = by @Phoshi "ですが、これはどのように行われますか。ソフトウェアには暗号化されたファイル、.exeなどがありますが、それらを暗号化することの利点は何ですか..それらを開いたままにしておくべきではありません...とにかく人々がそれらを解読しようとしている場合は?

11
Chetan Sharma

できません。ローカルで何かを実行している人は誰でも、それが何をするかを完全に制御できます。自宅に電話をかけると、無効にしたり、傍受したりできます。キーチェックを行う場合は、任意のキーを受け入れるように変更できます。ハードウェアチェック。これも、常にtrueを返すように変更できます。オープンなローカルコンピューターで完全に実行される保護は100%効果的ではありません-私が今まで見た唯一の方法は、重要なロジックを外部サーバーのどこかに配置し、それが要求されたときに検証することです-しかし、それは待ち時間と複雑さを追加します、および迷惑。

簡単に言えば、私は一生懸命努力しません、それはひびが入ります、そしてそれからそれがする唯一のことは合法的な顧客を苛立たせることです。あなたのソフトウェアが良ければ、特にビジネスアプリケーションがある場合は、関係者がそれを購入します。

19
Phoshi

世界には、すべてのソフトウェアメーカーが使用しているソフトウェア保護製品がいくつかあります。そのため、ハッカーにはよく知られています。

これらの保護製品は、若い天才のグループ、つまり新参者によって継続的に更新されているグループに直面しています。さらに、彼らは互いに競争しており、新しい製品やセキュリティスキーマをクラックするために競争しています。彼らは専用のウェブサイトを使用して彼らの悪用を数え続けます。

これらのグループにとって、新製品をクラックすることは、それがどの保護を使用しているかを見つけて、それを無効にすることだけです。保護製品の新しいバージョンが出て、通常は数日以内にそれらをクラックするとき、彼らにとってより興味深いです(!)。

ゲーム/ビデオ/音楽の多くの正当な所有者は、保護製品がウイルスよりも悪い可能性があり、インストール後に大きな問題を引き起こす可能性があるため、クラックされたバージョンをダウンロードすることを好みます。

結論として、独自の保護スキームを使用することは、購入するよりも最善のアイデアですが、製品がよく知られるようになると、それはwillクラックされることを知っています。

5
harrymc

できません。誰でも自分のコンピューター上のデータの塊を変更できます(これは、能力、合法性、ライセンスではなく、可能性についての声明です)。

4
knitti

クラックされたソフトウェアは、プロプライエタリエコシステムの一部です。フリーソフトウェアをクラックすることは意味がありません。フリーソフトウェアにパッチを当てることは、基本的なユーザーの権利です。

4
vtest

コンピュータにソフトウェアがある場合は、ソフトウェアが提供するすべてのものがあります。必要なのは、プログラムから必要なものを分離するか、セキュリティチェックなどの不要なものを削除することだけです。

ソフトウェアを実際に保護するには、ソフトウェアをユーザーから遠ざけ、Googleドキュメントのようにプログラムではなく、サービスのみを提供する必要があります。

人々がソフトウェアを購入し続ける理由は何ですか?合法になりたい人は誰でも、特に企業、企業、企業がそれを購入するでしょう。または、ハッキングされたコピーを入手するよりも購入する方が簡単な場合。必要なソフトウェアが利用できない場合や、必要な言語で利用できない場合などに、海賊に頼ることが多いためです。

1
Timo Huovinen
  1. それは本当に簡単なことではありません、あなたはそれらがどのように機能するかを見るために物事を分解したいという地獄のような好奇心を持っている必要があります。また、そもそもソフトウェアを書いた人を殴るという話題もあります。
  2. ソフトウェアを逆コンパイルするために利用できるさまざまなアプリがありますが、それらは完全でも包括的でもありません。安全でないサーバーまたは「友人」から元のコードの全部または一部を取得することをお勧めします。プログラムは、その機能を監視するソフトウェアレイヤーの上で実行できます。古き良き試行錯誤もあります。
  3. ハッカー/クラッカーが調べたい限り、それを防ぐことはできません。彼らは(最終的には)道を見つけるでしょう。
1
Tog

これが編集の答えです。

コピー防止がまだ存在する理由は、時間と慣性です。

コンピュータゲームを例にとってみましょう。有名なシリーズのファンは、ゲームの最新版がリリースされる前に、すべて大騒ぎになります。出版社は、クラックされたバージョンがシーンに表示されるのを待つのではなく、オリジナルのゲームを購入することを望んでいます。他の人が言ったように、グループは彼らの亀裂を公表するために競争します。出版社は、すぐにはわからないプログラムに隠しチェックを入れようとすることがよくあります。たとえば、入植者3では、私が正しく覚えていれば、鉄鋼を生産するはずだった建物は、ひびの入ったバージョンで肉を作りました。したがって、あるグループがそれを見逃した場合、別のグループはいわゆる「適切」になり、最初のグループが見逃した問題を修正することで名声を得ることを望んでいます。このサイクルはしばらく続く可能性があり、海賊版のユーザーを苛立たせます。出版社は、その間にオリジナルバージョンを入手することを決定することを望んでいます。

Stardockによって開拓されたもう1つの方法は、ダウンロード可能なコンテンツの使用だと思います。オリジナルのゲームの所有者は、Webサービスにログインして、オリジナルのゲームの所有者のみが利用できるいくつかの新しいエクストラをダウンロードする必要があります。このようにして、彼らは海賊がエキストラを入手するためにオリジナルバージョンを入手することを望んでいます。

慣性部分については、ここに例えがあります。私の祖父母の時代には、私の国では玄関のドアに鍵をかけている人はほとんどいませんでした。ロックを持っているだけで少し奇妙でした。都市化のレベルが上がるにつれて、犯罪率が上がり、しばらくの間ロックが必要になりました。犯罪の増加は法執行機関の活動の増加によって休まれ、物事は今ではかなり安全ですが、それが伝統の一部になったため、人々は今でも錠を使用しています。彼らは玄関のドアに鍵をかけるかどうかは考えていません。他のみんなと同じように、彼らはただロック付きのものを手に入れます。彼らは、20〜30年前のロックのデザインを使用していますが、そのようなロックは、プロの犯罪者がほとんど労力をかけずに選択できることを知っています。

ソフトウェア業界でも同じような気がします。ある種のソフトウェア保護があるのは普通になりました。はい、「海賊版を使用していることはわかっています!」のようなメッセージを表示するだけのプログラマーがいます。ユーザーに続行させますが、デフォルトの応答は、ある種の保護を取得することです。ユーザーベースが小さいプログラムや非常に特殊なプログラムの場合、warez d00dezに関心がないため、これが機能することがあります。それ以外の場合は、クラックが利用可能になるまでプログラムの最新バージョンの使用を遅らせることで役立ちます。

時には、決定は有能な人々の手に委ねられていません。多くの場合、弁護士やさまざまな事務員は、それが効果的であるかどうかわからない場合でも、どのタイプの保護が必要かを決定します。代わりに、彼らは自分に似合うもの、同僚が使用しているもの、パンフレットが最も光沢があるもの、誰が最も安いかなどを決定します。 Vistaが新しくなったときのことを思い出します。デジタル制限管理についての批判の中には、海賊がカードの露出したピンに直接接続できないように、新しいグラフィックカードをすべての側面からクーラーで完全に覆う必要があると述べたものがあります。ブルーレイディスクからの信号をそのように「盗む」。明らかに、それを考えた人は誰でも、処理中にビデオカードから信号を受け取るのに十分な知識と機器を持っている人が、カード全体を覆うクーラーのような単純なものに止められないだろうとは思いもしませんでした。

1
AndrejaKo

これがどのように機能するかを理解するには、実行可能コンピュータプログラムが、コンピュータが非常に非常に高速に実行する単純な命令の非常に非常に長いリストであることを最初に理解する必要があります。

これらの命令は、たとえば、内部に潜んでいる実際のバイトです。 EXEファイルであり、CPUが命令としてそれらを見るときに有用なことを実行させることを除いて、それらについて特別なことは何もありません。

もともとプログラマーはすべての命令を手作業で作成しましたが、「SHOW TEMPERATURE IN WINDOW」のような人間が読み取れる命令を取り、CPUが実際にこれを行うために必要な多くの命令に変換するソフトウェアを作成する方がはるかに高速であることがわかりました。 。

アイデアは、クラッカーがCPUの命令を見て、適切な場所で物理CDが不良であるかどうかを確認するなど、嫌いな部分を実行しているものを推測し、他の命令に置き換えるというものです。つまり、EXEファイルの数バイトを、慎重に計算された別のバイトセットに置き換えます。 CPUは気にしません-ただ命令を見るだけです。

次に難しいのは、上でスキップした部分が、後で必要な重要な情報を設定するなど、チェック以上のことを行わないこと、またはプログラムの残りの部分がEXEの整合性チェックを行って改ざんされていないかどうかを確認することです。 。何メガバイトもの大きさのEXEファイルの場合、これはかなりの作業になる可能性があります。

最近のこれに対処するための通常のアプローチは、物理的な壊れたメディアチェックから、「ソフトウェアを使用するにはサーバーにログインする必要がある」に移行することです。ライセンスキーはあなたが支払うものであり、注意深く管理する必要があります。

他のものと同様に、Adobe Acrobatなどのプログラムを作成するなど、それらのスキルで良いことをする必要なスキルを持つ人々がいます。また、Adobeのようなプログラムをクラックするなど、悪意のある目的でそれらを使用する同じスキルを持つ人々もいます。アクロバットなど.

2人の男、機械エンジニア、1人はその知識を使用して銀行の金庫室を構築し、もう1人は同じ知識を安全なクラッカーとして使用します。

この問題はソフトウェア業界に限ったことではなく、すべての業界で蔓延しています。

0
joeqwerty

「ほぼ」は、実際には限られたリソースによるものです。

すべてのセキュリティシステムは、正当なユーザーと許可されていないユーザーを区別することになっています。十分な時間とお金があれば、献身的な人々はどんなセキュリティシステムでも2つを混乱させる可能性があります。

0
Broam