ネットワークプログラミング相談室 Port19at TECH
ネットワークプログラミング相談室 Port19 - 暇つぶし2ch221:デフォルトの名無しさん
07/04/14 13:33:30
パスワードを平分で流したくないだけなら、
チャレンジ&レスポンスって方法もありますよ。
>>210は馬鹿だけど。

222:デフォルトの名無しさん
07/04/14 21:35:08
クラック版を不可能とは言えないまでも、
作成がかなり難しくすることは可能でしょうか?
また、そうするためにはどのような対策(パッカーも含めて)を行う必要があるでしょうか?
メモリ書き換え対策?の仕組みや、解読されづらいパッカーなど、あったら教えてください。

223:デフォルトの名無しさん
07/04/14 21:56:12
なんだ?誤爆ですか?

一ついえるのは「パッカー自作しろ」

224:デフォルトの名無しさん
07/04/15 12:44:34
>>223
いや、大作先生のことだと思う。

225:デフォルトの名無しさん
07/04/16 17:57:23
>>221
チャレンジ&レスポンスを見てみましたが、サーバー側で独自のレスポンスを作り
比較するらしいのですがその最初にパスなどを受け取るときにはどうするかが載ってなかった・・・まいっか
電気技術者三種が8月にあるから暇じゃなくなった・・・・orz

226:デフォルトの名無しさん
07/04/16 19:55:45
non-blockingモードを調べていて気になったんですが、
最近みたソースで select / poll でも EAGAINまたは、EWOULDBLOCK の
チェックしてたんですが、select/poll でもerrno にこれがセットされることって
あるんですかね??マニュアルにはなかったもので。。




227:デフォルトの名無しさん
07/04/16 20:44:54
selectそれ自体がEAGAINで戻ってくることはないはず

228:226
07/04/16 21:05:35
>>227
サンクス。やっぱり無駄なチェックなんですね。。。

ちなみに、non-blockingモードでも、selectやpollで待ち合わせてから、
send/recv すれば、EAGAINは返ってこないと思ってますが、
あってますよね?

selectから抜けて、sendするまでにバッファが詰まるとかあるのかな??


229:デフォルトの名無しさん
07/04/16 21:31:18
全部やっとけば?

230:デフォルトの名無しさん
07/04/16 22:04:07
>>227
kuruyo

231:デフォルトの名無しさん
07/04/16 23:49:09
プログラムに組み込むような形のhttpサーバを探しています。
できるだけ小さいもので、良いものがあれば教えてください。

232:231
07/04/17 00:05:14
自分でfnordというのと、cherokeeというのを見つけました。

233:デフォルトの名無しさん
07/04/17 17:08:14
>>228
それ俺も怖い。
pollで書き込み可能になってwriteしたらEAGAINとか
poll->読み込み可能->readでEAGAINとか。
似たようなことをここで聞いたらソース嫁ってずーっと前にいわれた。まだ読んでない。

だから一応read/writeでもEAGAINをチェックしてる。


234:デフォルトの名無しさん
07/04/17 22:18:12
アトミックじゃないんだからEAGAINになる可能性はあるだろ。

235:デフォルトの名無しさん
07/04/17 22:31:40
MS系のAsync~はrecvで読み込んでる最中にさらに
データが到着したら、次回のイベントは発火するけど、
データ自体は今回のrecvで帰ってくることがある(ので
次回recvしても読めないこともある)、ってMSDNあたり
で見た気がする

236:226
07/04/17 23:35:23
229のいう通りとりあえず全部やっておくのが安全ですね・・・。


237:デフォルトの名無しさん
07/04/18 04:16:07
一般的にファイアウォールのソフトウェアは
どんなモジュールをトラップしているものなのでしょうか?
(Windows)

ファイアウォールのソフトを手動で削除したら、
CScript.exeから
Msxml2.XMLHTTPオブジェクトなどのオブジェクトを使用して
インターネットにアクセスする事ができなくなってしまいました。
WinHttp.WinHttpRequestなどもすべて同じです。エラーが起きます
WScript.exeは大丈夫です

削除後、まず最初に、WScript.exeからもCScriptからも
FileSystemObjectが使えなくなっていたので
レジストリを調べたらFSOのActiveXコンポーネントscrrun.dllのパスが
ファイアウォールのDLLのパスにすり返られていたので
これは直しました

でもMsxml2.XMLHTTPやMicrosoft.XMLHTTPなどはすべて
そういう事にはなっていません。元のパスのままのようです

このような現象はどこがトラップされて起きているものなのでしょうか?

削除の仕方がまずかった訳で、再インストールしたりすれば
元に戻せるのかもしれませんが、
一応ダメ元で手動復元にトライしたいのです。

238:237
07/04/18 04:18:40
あ。scrrun.dllをフックしていたのは
正確にはファイアウォール部分ではないですね・・・
総合セキュリティソフトだったので・・・
スクリプトブロックの部分でした

239:デフォルトの名無しさん
07/04/18 05:56:14
>>236
来るはずがないんだったらチェックしたって害はないからな

240:デフォルトの名無しさん
07/04/19 07:26:52
APOP破られたの?

241:デフォルトの名無しさん
07/04/20 10:45:40
【IT】電子メールの暗号化技術「APOP」破られる…電通大の研究グループが発見、当局に連絡[04/19]
スレリンク(bizplus板)

Vulnerability Summary CVE-2007-1558
URLリンク(nvd.nist.gov)

ちなみにマン・イン・ザ・ミドルアタックだから、
SSLでサーバ認証をすれば問題ない。
SSLだったらAPOPである必要もないわけで、APOP死亡。

242:デフォルトの名無しさん
07/04/20 13:45:15
MD5 の脆弱性が表面化してきた ってことか。

243:デフォルトの名無しさん
07/04/20 14:47:10
前からだろw

244:デフォルトの名無しさん
07/04/20 15:26:45
あくまでハッシュ生成のためだけに使うべきだな。

245:デフォルトの名無しさん
07/04/20 15:35:16
同一ハッシュ値の生成(自動ではなく 人手の補助有り)から pass が捕まったってことだし
MD5 をハッシュ関数にするのはまずいんでねーの?

246:デフォルトの名無しさん
07/04/20 15:50:35
色んなデータを扱う限りは値はバラけてくれるんじゃないかなあ。
扱うデータに偏りがある場合は無理かもしれんけど。

247:デフォルトの名無しさん
07/04/20 21:07:20
なんか良いハッシュ関数ある?

248:デフォルトの名無しさん
07/04/20 21:59:35
>>247
SHA-2

249:デフォルトの名無しさん
07/04/20 22:21:45
SHA-256

250:デフォルトの名無しさん
07/04/20 22:42:12
受信、送信ソケットバッファを20Mbyteとってるんだけど
デカ過ぎ?

251:デフォルトの名無しさん
07/04/20 22:49:32
1TBくらいメモリがあるならそれくらい気にしなくていいんじゃね

252:デフォルトの名無しさん
07/04/20 23:56:36
100セッションで2GBか。楽しそうだな。
セッション張りまくりで速攻落とせそう。

253:デフォルトの名無しさん
07/04/21 00:37:03
このスレはハッカが盗り放題です><

254:デフォルトの名無しさん
07/04/21 08:34:43
URLリンク(www.atmarkit.co.jp)

その一方、大きな問題としてSHA-2がSHA-1の代替としてふさわしいハッシュ関数であるのかという議論がある。
というのも、昨今、MD5やSHA- 0に対する攻撃成功例が相次いでいること、
またWang氏らの攻撃によって予想よりも簡単にSHA-1への攻撃が成功したことなどから、
NISTや暗号研究者はMD5/SHA-1の設計方針自体に実は脆弱性があるのではないかと疑い始めている。

そのため、MD5/SHA-1の設計方針の延長線上で設計されているSHA-2についても
本当に安全なのか確信が持てなくなってきているのが現状である。
2005年10月に行われたハッシュ関数に関するワークショップ(NIST Cryptographic hash workshop)の席上でも、
NIST自身が今後10年間でSHA-256に対する攻撃方法が見つかる可能性はあると考えていると述べている。

さらに、AESの選定と同じように、新しいハッシュ関数選定のための公募を実施すべきとの意見も根強く残っており、
2006年8月には再度ワークショップが開催されることが決まった。
ここでの議論次第では数年後にハッシュ関数コンテストの実施もあり得る。
近年国際的にもハッシュ関数の設計に関する研究が活発化しており、
暗号学会でもしばらくの間、ハッシュ関数の提案や解読が続くものと考えられている。

255:デフォルトの名無しさん
07/04/21 09:37:09
もお2006年8月は過ぎたわけだがどうだったの?

256:デフォルトの名無しさん
07/04/21 09:41:07
自分で探したらこうだった

・2007年にThird Hash Function Workshop 2007を開催
・2008年~2012年までのタイムスケジュールの提示
・2012年に新しい標準ハッシュ関数を決定する

257:デフォルトの名無しさん
07/04/21 10:34:14
ずいぶん気の長い話だな
5年以内にSHA-256が破られたらジエンドというわけか

258:デフォルトの名無しさん
07/04/21 10:50:56
いや、別に他でも作っていいわけだから。
これまでもあったように、バリアントを作ったり。

259:デフォルトの名無しさん
07/04/21 13:37:48
>>251
>>252
ソケットを一個しか開かないのであれば問題ないか?

260:デフォルトの名無しさん
07/04/21 13:44:16
書き忘れたが、setsockoptで20Mを要求するプロセスは3つだけで
他にデカいソケットバッファを要求するプロセスはない

261:デフォルトの名無しさん
07/04/21 13:45:06
使用可能なメモリはどれくらいあるんだよ

262:一日駅長
07/04/21 13:58:46
こんにちは一日駅長と申します。
いきなりですが、PHPで作りたいものがあるんですが、
WINDOWS XPを使ってるのでAPACHE(←スペル合ってる?)をダウンロードしよ
うと思ったのですが。インストール後APACHE MONITOR IS ALREADY STRATEDとエラーが、、
なんか上手くいかんのです。全てのプログラム→からクリックしてもなにも出来ない
し、ためしにXAMPPをダウンロードしたのが影響してるのかな?????
上のを削除しようとしてもXAMPPが既に起動してますと表示されます。起動してないつもりだけど(涙)
スレ違いならスマソ。初心者で用語とか全くチンプンカンプンなので分かり易く
説明キボン。

263:デフォルトの名無しさん
07/04/21 14:01:27
スレ違い

264:一日駅長
07/04/21 14:02:36
どこにいけば、、、、

265:デフォルトの名無しさん
07/04/21 14:13:04
webプログラミング板ってのがあったと思う

266:デフォルトの名無しさん
07/04/21 14:24:38
URLリンク(find.2ch.net)

267:デフォルトの名無しさん
07/04/21 15:44:07
>こんにちは一日駅長と申します。

こんにちは。シュールな書き出しですね。

268:デフォルトの名無しさん
07/04/22 09:27:00
>>261
4GBっす

269:デフォルトの名無しさん
07/04/22 09:55:10
沖縄県の方へ(命に関わる注意事項です)

沖縄県での選挙ですが、どうか民主党だけは避けてください。県民の生命に関わる可能性があります。
民主党の最大の公約は一国二制度(※)ですが、一度「一国二制度 沖縄 三千万」等で検索をお願いします。
この際、民主党のHPで調べても良いです。以下の注釈↓と矛盾することは書いてないはずですから…

※一国二制度
 簡単に言えば沖縄を中国と日本の共有物にし、そこに3000万人の中国人を入植させます。
 (つまり沖縄人口の 96% を中国人にして、実質、沖縄を中国人の居住地とします。)
 さらに「自主」の名の下、沖縄で有事が起きても自衛隊は干渉できません。
 3000万人の中国人が、少数派となった130万人の日本人に何をしても、です。
 そして反日教育を受けた中国人の反日感情の強さは、ほとんどの日本人の理解を超えるものです。

今回の選挙で民主党が勝った場合、「自主」「発展」を連呼しつつ段階的に進めていくことになります。
自主と言っても、自主を認めるのが「住人の96%が中国人となった」後だということに気をつけてください。
発展と言っても、新沖縄の少数派となった「少数民族日本人」の発展ではないことに気をつけてください。

270:デフォルトの名無しさん
07/04/22 14:16:28
>>258
暗号の専門家が手がけてないオレオレハッシュのほうがよっぽど危険じゃね?

271:デフォルトの名無しさん
07/04/22 16:10:57
オレオレハッシュを暗号の専門家が作ったらいいのでは。

272:デフォルトの名無しさん
07/04/22 18:19:56
専門家達のチェックを通ったらオレオレじゃないわけだが

273:デフォルトの名無しさん
07/04/22 18:28:29
オレたちが暗号の専門家になればいい

274:デフォルトの名無しさん
07/04/22 19:51:52
たぶん専門家を雇った方が効率いい
つーかまだ破られたわけじゃないんだからSHA-256使ってればいいだろ

275:デフォルトの名無しさん
07/04/22 20:25:03
>>274
夢が無いね

276:デフォルトの名無しさん
07/04/22 21:53:53
専門家が作ったぐらいでは、信頼できないわけだが。

277:デフォルトの名無しさん
07/04/22 21:57:26
専門家もピンキリ。
自称専門家なんてのも居るし。

278:デフォルトの名無しさん
07/04/23 00:24:45
windowsどうしのTCPです。
2つときは、簡単だったのですが、A,B,Cと3つパソコンでやまびこ
みたいにエコーをしたいと思ってます。A→B→C→B→A
子スレッドがそれぞれ担当するとします。

--①Aの子スレッドのプログラム--
send(); //A→Bのメッセージを送信
recv(); //B→Aのメッセージを受信

--②Bの子スレッドのプログラム--
recv(); //A→Bのメッセージを受信
B⇔Cのための子子スレッドを呼び出し?
send(); //B→Cのメッセージを送信

--③BのB⇔Cのための子子スレッド--
send(); //B→Cのメッセージを送信
recv(); //C→Bのメッセージを受信

こういう感じでしょうか?
疑問がありまして、Bの子スレッドのなかで、③を呼び出して子子スレッドは、
たぶんダメですよね。実際に実装するときは、どのようになるでしょうか。
よろしくお願いします。

279:278
07/04/23 00:34:05
訂正すみませんです。
よろしくお願いします。

--①Aの子スレッドのプログラム--
send(); //A→Bのメッセージを送信
//Cから戻ってくるまで、ちょっと待ちます
recv(); //B→Aのメッセージを受信

--②Bの子スレッドのプログラム--
recv(); //A→Bのメッセージを受信
B⇔Cのための子子スレッドを呼び出し?
//Cからメッセージが来てsend()
send(); //B→Aのメッセージを送信

--③BのB⇔Cのための子子スレッド--
send(); //B→Cのメッセージを送信
recv(); //C→Bのメッセージを受信

280:デフォルトの名無しさん
07/04/23 01:19:45
作成者、送信元、送信先
と言うような情報をパケットに持たせて、
プログラム側はその情報に従ってメッセージを送信し、
作成者まで戻ってきたら破棄する。

という感じ?よく分からんけど

281:278
07/04/23 01:59:09
>>280
レスありがとうございます。そういう理論ですか。なるほどです。

ネットワークプログラミングとマルチスレッドが、
初心者なので、実際のプログラミングでどうしたら、
良いのかと思いまして。

Bのプログラミングは、もうちょっと細かく見ると
WSAStartup()->socket()->bind()->listen()->accept()->recv()->
B⇔Cのための子子スレッドを呼び出し?
->send()->closesocket()->WSACleanup()

■子スレッドで、_beginthread使っても良いなら、わかりやすくできるんですが、
だめなんですよね?

■WSAStartup()->socket()->bind()->listen()->accept()->recv()->
{B⇔Cの処理 WSAStartup()->socket()->connect()->send()->recv()->WSACleanup()}
->send()->closesocket()->WSACleanup()
スレッド使わないで、WSAStartup()2回呼んだら、どうなるんだろうとか、
一回目のWSACleanup()で、A⇔B,B⇔C、両方の接続切れちゃったりしますよね。
とか、いろいろ疑問で。実験して見ようと思うんですが、頭がごちゃごちゃして
難しいです。

■あとは、はじめからBのプログラミングで、
AがBに接続をして、アクセプトした瞬間に、その親スレッドで、
A⇔B,B⇔Cのやり取りするスレッドを、立ち上げてスレッド間のメッセージで
タイミングをはかる方法があるかもしれないですが、スレッド間のやりとりって、
やったときなくて、難しいです。

うまく説明できず、すみません。的外れなこと言ってるかもしれないです。
2番目と3番目の■について、ここに気をつけるなど、アドバイスいただけないでしょうか。
よろしくお願いします。

282:278
07/04/23 04:08:28
>>281
2番目の■実験してみました。ちょっと違うんですが、
URLリンク(www.geekpage.jp)
こちらのページのプログラムを参考に、させていただき実験してみました。
int main2(int argc, char *argv[]);関数を作成しました。
内容は、
//WSADATA wsaData;
// if (WSAStartup(MAKEWORD(2,0), &wsaData) != 0) {
// printf("WSAStartup failed\n");
// return 1;
// }
// WSACleanup();
●WSAStartup()とWSACleanup()は、一回でいいと思い
にコメントを入れました。この理解合ってますでしょうか?

main()関数の中のsocketclose();のあとに
main2(argc,argv);を呼び出しました。

●すると、同じページが2回表示されました。
この要領で、281も実装すれば大丈夫でしょうか?

283:278
07/04/23 04:16:18
あっ、でもクライアントプログラムでした。
■WSAStartup()->socket()->bind()->listen()->accept()->recv()->
{B⇔Cの処理 socket()->connect()->send()->recv()}
->send()->closesocket()->WSACleanup()
だと、サーバプログラムで、上記のように実験しないとだめですか。
んー、これで動きそうですが、状況作るの難しいです。
眠いので、もうだめです。><

284:デフォルトの名無しさん
07/04/23 16:09:22
プロセス間通信もここでいいんでしょうか?

親プロセスと子プロセスで、1対1のプロセス間通信をしたいです。
状態やエラーも返したいので名前付きパイプにしたいと思います。

しかし、親子が複数作られる場合があり、
当然、パイプの名前をユニークな名前にしなければならないのですが、
Windowハンドルを使えばいいでしょうか?
こういう場合、普通はどんな風にプロセス間通信しますか?

285:デフォルトの名無しさん
07/04/23 17:31:14
C言語にてCGIを作成しています。
作成したCGIプログラムをHTTPで確認しようとすると
「Script Execution Failed」というエラーが表示されてしまいます。

色々調べたところサーバ側ではRedhat7.1という環境でサーバを動作
させており、Linuxで作成したexeファイルしか動作できないようなのです。
(Linux使ってないのでこの辺り大分自信が無いのですが)

これはつまり、VisualC++6.0等のWindows上で動作するコンパイラで作成した
cgiファイルは使えないという事なのでしょうか?

286:デフォルトの名無しさん
07/04/23 18:01:26
>>285
はい、使えません。

287:デフォルトの名無しさん
07/04/23 18:02:41
>>284
無名パイプを継承可能で作成してさらにCreateProcessでハンドルを継承可能にする。

288:285
07/04/23 18:35:48
>>286
SHOCKだ!LINUX使いの人じゃないとCGI作れないんですね。
返答ありがとうございました。

289:284
07/04/23 18:37:13
継承 パイプ CreateProcessでググってみました
URLリンク(www.fides.dti.ne.jp)
このページを参考に作ってみたいと思います。
子プロセス側が無いですが。

290:デフォルトの名無しさん
07/04/24 05:19:32
>>288
ソースコードをLinuxマシンに転送してLinuxマシン上でコンパイルすれ
ばいい。



291:デフォルトの名無しさん
07/04/24 10:46:12
同じインテルだろうからアセンブラで組めばおk。

292:デフォルトの名無しさん
07/04/24 11:32:40
ファイルを転送するプログラムを作っているんですが、

sendに一度に渡すデータサイズはどれぐらいが適正なんでしょうか?
大きめに渡したほうが速く送れると、
どこかで読んだので大きめにしたほうがいいのかと
1MBまでなら渡しても正常に送ってくれるので
今のところ1MBにしています・・・でも、これはさすがに大きすぎるような気がして不安です。

293:デフォルトの名無しさん
07/04/24 11:35:11
OSがサポートする実行ファイルの形式が異なるので
WindowsとLinuxの両者でネイティブ動作する実行ファイルを作るのは不可能。

一般にコンパイル環境と異なるターゲット環境のための実行ファイルを
生成したい場合には、クロスコンパイラというものを使う。

294:デフォルトの名無しさん
07/04/24 17:44:16
wineつかえばいいのに

295:デフォルトの名無しさん
07/04/24 19:51:45
4096byte以上はフラグメントされます。
リングバッファ処理を覚えましょう。

296:デフォルトの名無しさん
07/04/24 21:25:18
>>291-295
アンカーぐらい付けてくれ

297:デフォルトの名無しさん
07/04/25 00:50:12
EDITのウィンドウの文字の大きさを小さくしたいのですが、可能なのでしょうか?


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch