python

そろそろ、スライド発表会があるのでやばい…(Scapy)

【はじめに】 そろそろ、とある3箇所でScapyを使ったファジングについて 発表しなきゃいけないので、今から頑張ろうと思います。いや最近ずっとWebやってたので、、(言い訳 【メソッド】 1.プロトコルの内容を見る 2.類似したプロトコルがScapyでどういう…

Geventの良さ4

昨日の続きします。multiprocessingのPoolとProcessの違いがちょっとわからなかったんですが、聞いてみたところ、Processは人で,Poolは部屋だそうです。なるほど。わかりやすすぎる。> http://ideone.com/GhpaJU > これの、 > gevent.sleep(0)って必要ですか…

Geventの良さ3

Scapyに移りたかったんですけど、さすがに中途半端すぎるので、 Geventの良さ1が始まってから、2日ぐらいしか経ってないので、一週間は頑張ろうと思います。 #multiprocessing def queue_func(queue): for i in range(30): time.sleep(0.5 * random.random()…

Scapyから始めるリズムに合わせて1

GeventとMultiprocessingは置いておいて、 Scapyで必要なときに使おうかと思います。大雑把ですが、とりあえずプロトコルを作るモジュールから見ていこうと思います。 結構挫折しそうな話題ですが、頑張っていきます。例となるプロトコルを選んでみましょう…

Geventの良さ2

これはメモです from multiprocessing import Pool def f(x): return x*x if __name__ == '__main__': with Pool(processes=4) as pool: # start 4 worker processes result = pool.apply_async(f, (10,)) # evaluate "f(10)" asynchronously print(result.g…

Geventの良さ

ここによく出てくるEvent Loop...Event LooPってなんだ?はい、イメージで言うとselectで待つこと。例えば、 同期的な受信処理を書くと… sock = socket() sock.recv() #ここでデータが来るのを待つ これだと、一つのプロセスはデータが来るのを待ち続けるこ…

PySideで何を作る2

#!/usr/bin/python import sys from PySide.QtGui import QApplication,QIcon,QWidget,QLabel class SampleWin(QWidget): def __init__(self): QWidget.__init__(self) self.setWindowTitle("Icon2") self.setGeometry(300,300,300,300) def setIcon(self): …

PySideで何を作る

Life is Tech!(流山市編)までにアプリ作れるようになっておかないといけないのに なにもできない、Unityも動かなくなったし ←これまじ辛い あと、Pygameはゲーム専門なので、使えそうにない だから、PySideで再挑戦。 import sys import time from PySide.Qt…

Pygameたのしぃ

最終的にはマリオ&ルイージRPG的なものを作りたいなと思って ゲームを作りたいと思い始めたわけなんですが、 どうすりゃあゲーム作れるとか考えたこと(Unityは違う)もないので、 どりまPygameさわろうと思って、適当に触ってたら 「これたのしい」ってなっ…

Fuzzing->Pygame鬱

最近、新年も明けてクソ(コンピュータに関係ない)生活を送ってましたー マンガ読んで、アニメ見て、麻雀して、ギターとかピアノ弾いて、 物語書く猿真似して、セカオワlocks見まくって、 カラオケして、髪の毛染めて、酒のんで、タバコ吸って、マリファナ吸…

DNSのメモ

>>> dnsquery <IP frag=0 proto=udp |<UDP sport=<RandShort> dport=domain |<DNS opcode=QUERY qdcount=1 |<DNSQR qname='www.facebook.com' qtype=A qclass=IN |>>>> >>> dnsquery.dst='129.250.35.250' >>> dnsquery1=_ >>> sr1(dnsquery1) Begin emission: .Finished to send 1 packets. * Received 2 packets, got 1 a…</dns></ip>

Intel風

HACKINGのP.345の/bin/shを起動するために文字を16進数に直す必要があるそうで。 これから学校の授業でもアセンブリ書かないとダメだから、16進数に直すソース書いてみた。Test: $ python to_hex.py >>//sh 0x68732f2f >>/bin 0x6e69622f >>exit 結果は…

構文解析!part 3.2

> >= Test: >>10 > 10 False >>10 >= 10 True >>10 < 10 False >>10 <= 10 True >>exit End... Source Code: def factor(begin): global SyntaxFlag global i val = 0 if begin[i] == "(": i+=1 val = expression(begin) i+=1 while begin[i].isdigit(): Syn…

構文解析!part 3.1

昨日は”==”だけでしたが、今日は”!=”機能も付け加えました。 結構この書き方に満足してます。 あと、とある東大生にclassで書いたほうがいいって言われたのでpart4.0にはclassで書きます。Source Code: def factor(begin): global SyntaxFlag global i v…

構文解析!part 3

新しく、True or False機能もつけました。 まだ”==”文しか対応してませんが、我ながらいい出来です。Source Code: def factor(begin): global SyntaxFlag global i val = 0 if begin[i] == "(": i+=1 val = expression(begin) i+=1 while begin[i].isdigit…

構文解析!part2.2

ポテチ先生に色々教えてもらいました。@ashigirl96 1個目:2**3**3が512に評価されるのはおかしい。 2個目:"it=quit"などでも終了してしまうので終了条件変えよう 3個目:iがglobal変数なのキモいので、iterator使うなどしよう 4個目:全体的に命名規則どう…

構文解析!part2.1

さきほどの構文解析ではあるミスが有りました。 2**3/2**3 が1にならないということです。 2**3/2**3 -> 8/2**3 -> 4**3 -> 64という感じです。だから、書き直しました。はい。 def number(begin): global i val = 0 if begin[i] == "(": i+=1 val = express…

構文解析!part 2

http://reonreon3reon.hatenablog.com/entry/2012/11/27/020832 ↑このときは構文解析じゃあありませんでした。愚直に実装したただの…うん。 (完成度は満足してるんだからいいだろ!いい加減にしろ!)それから月日は壱年経ちまして、最近「構文解析かけるよ…

same_ip.py改良したった(Gitの使い方も覚えた

Git楽しい ✌('ω'✌ )三✌('ω')✌三( ✌'ω')✌ 先日 same_ip.pyを作ったので、だったら http://docs.python.jp/2.6/library/optparse.html でよりツールっぽくしてやろうと思った僕は、 書き直しました。https://github.com/hogehogeworld/tpc/blob/master/EveryDa…

まーたつまらないもの作っちゃったww

またつまらぬものを…作っちゃった。 from scapy.all import * PACK = rdpcap(raw_input("Input the packet :")) s = raw_input("Which IPaddr | Etheraddr(I|E):") if s=="I": IPLIST = [i.sprintf("%IP.dst%") for i in PACK] IPLIST2 = [i.sprintf("%IP.sr…

今日のネットワーク。続き!の続き!

やばい!!さっき機能を追加したんだけど、 自分なりには満足!!wそれは…なんと! Scapyをつかってより分かりやすくPACKTETを見れるって物です!最高!!!✌(๑˃̶͈̀◡˂̶͈́๑)✌あっ、あと、受け取ったパケットを[ A ] から [ ~ ] までに文字になおせる奴はなお…

パケットキャプチャ作ってみた。

自分で プロトコルが選べるパケットをキャプチャ出来た…ふふふっ。 簡易Wiresharkって思ってくれたらいいですね、 tpc.py って名付けました。 TinyPacketCaptureです。 from socket import * from AlPRO import AlPro import sys capture_start = lambda pro…

今日のネットワーク。

へぇ〜!ってなることがありましてね。はい。とあるサイトから Pythonでパケットキャプチャ作る!みたいな?あ?うん。で、ソースの途中で ETH_P_IP = 0x800 s = socket(PF_PACKET, SOCK_RAW, ETH_P_IP) s.bind(("eth1", ETH_P_IP)) ってあったので、 ぱーっ…

(Scapyでパケットを開く)くそゴミスクリプト書きました!

最近パケットをキャプチャして厨二病みたいにパケット眺めてるんですけど、 正直パケットを open したりなんかしたりするのめんどくさいので、いい方法ないかなぁ〜って。 なっちゃたりしっちゃったり。うん。え?うん。だから、せっかくだし Scapyでスクリ…

Type()でクラス作りにて。。

これを見ていただきたい。 #!/src/env/bin python from ctypes import * class BBeer_recipe(Structure): _fields_ = [ ('amt_barley',c_int), ('amt_water',c_int), ] Beer_recipe = type('Beer_recipe',(Structure,), {'_fields_':[ ("amt_barley",c_int),…

こんなことが?

なんか pythonの黒魔術じゃないけど、見つけました。 C = type('C',(),{'x':666, 'y':lambda self: 'Hello'}) c = C() print c.x,c.y() #実行結果:666 Hello """ 第一引数に型名、第二引数に継承するクラス、第三引数にメンバを指定 """ よはtype関数が clas…

某問題で、

Pythonには chrっていう関数があるのになぜ unchrがないんだ!っておもったり、さっかくなら数値を2進数にして^とか | とか & とかを簡単に出来ないかなぁって思って作った。 #!usr/env/python #chr's converse unchr = lambda(raw): bin(ord(raw))[2:] #un…

実践パケット解析にて、

まだ『知っておきたい下位層プロトコル』というところを読んでいます(ちょうど中盤)で,サンプルのパケットをwiresharkで見てどういうことで、そのパケットがどういう意味を果たすか 書いてあります。しかし、この前せっかくScapyを勉強したので、Scapyでも…

Scapyの入門

Scapyはパケットを作るための最高のアプリ。Pythonで実装と。はい。 まじでPython最強なんだけど。どうやら、簡単にパケットを作れるらしいです。 >>> ping = IP(dst='192.168.1.13')/ICMP() >>> ping.show() ###[ IP ]### version= 4 ihl= None tos= 0x0 le…