watchコマンド

watchという便利なコマンドがあるのですが、なぜかcygwinには入っていないので、手動で入れなきゃだめ見たい。

Cygwin で Watch コマンドprocps
http://takuya-1st.hatenablog.jp/entry/2014/06/27/031605

watch コマンドあるぜーひゃっはー
Cygwin の watch コマンドはパッケージで提供されてないので、
探しまわっても見つからず途方に暮れて以前NCURSESをRubyで叩いて作ったことがあった。
procps というパッケージに含まれていることを知った。無知って怖い

apt-cyg install procps

これで無事にwatch コマンドが使えます。安心です。
ヒャッハー。
posted by koteitan at 16:20| Comment(0) | TrackBack(0) | その他備忘録 | このブログの読者になる | 更新情報をチェックする

2017年03月07日

HTML5Test

HTML5を勉強しだして、つくづく思うのはIEがイケてないということだなぁ・・。
対応していない要素が多すぎる。(;´Д`)



win7+IE11だと302点しかないぞ・・・。
このblogを書いている Firefox 51.0 on Ubuntu で469点。
FireFoxも優秀ではあるが、input type=timeとかに対応してねぇのがなぁ・・。

日付入力とか時刻入力なんて普通にあるのに
早く対応しねぇかな・・。
jQueryプラグインでごまかすのもなんだかなぁ、と思います、はい。
posted by koteitan at 16:23| Comment(0) | TrackBack(0) | その他備忘録 | このブログの読者になる | 更新情報をチェックする

2017年03月06日

pythonがなければjavascriptでいいじゃない

なーんにも開発環境も入ってないwindowsだけで、アクセスログを解析しろとか言われましてもね、、(;´Д`)

凝った解析はいらなかったらしいので、javascriptでちまちまやったけど、
なんだかなぁ、感。

めも
  • cscriptコマンドでjavascriptファイルは実行できる(VBscriptも)
  • ファイルの読み出しとかはActiveXに頼るしかないみたい(var fs = new ActiveXObject("Scripting.FileSystemObject");
    ) 
  • なんかjavascriptのバージョン古い気がする。Arrays.forEach(function(){})が使えん・・・
  • 入力引数もwshに頼る。( var arg1=WScript.Arguments.Item(0);)
まぁ、BATやPowerShellでやることを思えばまだ楽ですわな。
続きを読む
posted by koteitan at 16:36| Comment(0) | TrackBack(0) | その他備忘録 | このブログの読者になる | 更新情報をチェックする

2017年03月02日

SQLite3 小技 fetchall()

SQLiteは便利ですよねぇ。
辞書では物足りないが、いちいちclass定義するのもなんだかな、という時とか
中断データ作る時とか、色々便利。:memoryにしておけばファイルも作らなくていいから、
集計とかにもいいですよね。

エクセルなのにエクセルで集計できんレイアウトになってたりしても
python+xlrd+SQLite3でど根性集計もできる。脱線した。

で、技というか 1カラムしかselectしない時は、いちいちタプルで渡してくれなくてもいいので

c.execute("select filepath from master")
row =[str(item[0]) for item in c.fetchall()]

こんな感じでタプルを解除してしまえば、

for r in row:
  func(r)

みたいな感じで後続が楽、という話さ。

検索結果がA,B,Cとした場合、[(u'A',),(u'B',),(u'C',)] と帰ってきてしまう(タプルの配列になる)ので、
['A','B','C']と入れ替えてるだけです。(タプル外して、unicodeも解除)

fetchallできないような巨大な応答とかはコツコツカーソルを動かして頑張るしかないですが。


参考リンク

続きを読む
posted by koteitan at 14:12| Comment(0) | python | このブログの読者になる | 更新情報をチェックする

CVE-2016-8743  Apache HTTP Request Parsing Whitespace Defects

リクエスト中にあるCRをスペースと解釈することを悪用してスマグリング攻撃をしかけたり、とかの問題。
歴史的な問題から、HTTPリクエストの解釈はウルトラふんわりしなきゃならなかった。
HTTP/1.1もhttp/1.1でもOKにするとか、スペースの数とかね。

もっと詳しくはRFCを熟読してもらうとして、(https://tools.ietf.org/html/rfc7230#section-3.1.1
この解釈をきっちり行うことで、脆弱性を防ぐ、というわけだね。


     Apache HTTP Server, prior to release 2.4.25, accepted a broad pattern of unusual whitespace patterns from the user-agent, including bare CR, FF, VTAB in parsing the request line and request header lines, as well as HTAB in parsing the request line. Any bare CR present in request lines was treated as whitespace and remained in the request field member "the_request", while a bare CR in the request header field name would be honored as whitespace, and a bare CR in the request header field value was retained the input headers array. Implied additional whitespace was accepted in the request line and prior to the ':' delimiter of any request header lines.

    RFC7230 Section 3.5 calls out some of these whitespace exceptions, and section 3.2.3 eliminated and clarified the role of implied whitespace in the grammer of this specification. Section 3.1.1 requires exactly one single SP between the method and request-target, and between the request-target and HTTP-version, followed immediately by a CRLF sequence. None of these fields permit any (unencoded) CTL character whatsoever. Section 3.2.4 explicitly disallowed any whitespace from the request header field prior to the ':' character, while Section 3.2 disallows all CTL characters in the request header line other than the HTAB character as whitespace.

    These defects represent a security concern when httpd is participating in any chain of proxies or interacting with back-end application servers, either through mod_proxy or using conventional CGI mechanisms. In each case where one agent accepts such CTL characters and does not treat them as whitespace, there is the possiblity in a proxy chain of generating two responses from a server behind the uncautious proxy agent. In a sequence of two requests, this results in request A to the first proxy being interpreted as requests A + A' by the backend server, and if requests A and B were submitted to the first proxy in a keepalive connection, the proxy may interpret response A' as the response to request B, polluting the cache or potentially serving the A' content to a different downstream user-agent.

    These defects are addressed with the release of Apache HTTP Server 2.4.25 and coordinated by a new directive;

        HttpProtocolOptions Strict

    which is the default behavior of 2.4.25 and later. By toggling from 'Strict' behavior to 'Unsafe' behavior, some of the restrictions may be relaxed to allow some invalid HTTP/1.1 clients to communicate with the server, but this will reintroduce the possibility of the problems described in this assessment. Note that relaxing the behavior to 'Unsafe' will still not permit raw CTLs other than HTAB (where permitted), but will allow other RFC requirements to not be enforced, such as exactly two SP characters in the request line.

    Acknowledgements: We would like to thank David Dennerline at IBM Security's X-Force Researchers as well as Régis Leroy for each reporting this issue.
    Reported to security team: 10th February 2016
    Issue public: 20th December 2016
    Update Released: 20th December 2016
    Affects: 2.4.23, 2.4.20, 2.4.18, 2.4.17, 2.4.16, 2.4.12, 2.4.10, 2.4.9, 2.4.7, 2.4.6, 2.4.4, 2.4.3, 2.4.2, 2.4.1, 2.2.31, 2.2.29, 2.2.27, 2.2.26, 2.2.25, 2.2.24, 2.2.23, 2.2.22, 2.2.21, 2.2.20, 2.2.19, 2.2.18, 2.2.17, 2.2.16, 2.2.15, 2.2.14, 2.2.13, 2.2.12, 2.2.11, 2.2.10, 2.2.9, 2.2.8, 2.2.6, 2.2.5, 2.2.4, 2.2.3, 2.2.2, 2.2.0



Security risks of Unsafe

Users are strongly cautioned against toggling the Unsafe mode of operation, particularly on outward-facing, publicly accessible server deployments. If an interface is required for faulty monitoring or other custom service consumers running on an intranet, users should toggle the Unsafe option only on a specific virtual host configured to service their internal private network.
 HttpProtocolOptions Unsafe で元通りの解釈になるようなので、この修正を適用したらアプリがエラー吐きまくりでござる、\(^o^)/
 になったら、十分に安全を確認(悪意が入らないかどうかを精査)した上で、解除するってのも有りなんだろうけど。
 ま、自己責任で。セキュリティの観点からいえばアプリを直せ、になるからねぇ。
続きを読む
posted by koteitan at 13:44| Comment(0) | TrackBack(0) | 情報処理 | このブログの読者になる | 更新情報をチェックする

2017年02月27日

[DB2]DB2の構成パラメータをSQLから参照するには

どんな状況下で、こんな技が必要なのかはよくわからないが、
SYSIBMADM経由でアクセスできるようだ。

DBCFG 管理ビューおよび DB_GET_CFG 表関数 - データベース構成パラメーター情報の取得


こちらのblogにも詳しく説明があります。

DB2勉強する 〜 DB2の構成パラメータの確認・設定方法

posted by koteitan at 14:33| Comment(0) | TrackBack(0) | DB2 | このブログの読者になる | 更新情報をチェックする

2017年02月23日

IISのエラーログの場所

(;´Д`) IISなんか20年前ぐらいに触っただけなんだが、超進化しとるな・・。

apacheとかだとデフォルトならAccessLogと同じ場所に出力されるエラーログも
やっぱり独自路線のIIS。

おもくそ探して このフォーラムのdeeplfoさんのコメ

OK, seems like I found my answer, from here: http://support.microsoft.com/default.aspx?scid=kb;en-us;820729

"The HTTP API creates a subfolder HTTPERR in the specified folder, and then stores the log files in the subfolder. This subfolder and the log files receive the same permission settings. The Administrator and Local System Accounts have full access. Other users do not have access."

So, it seems that the HTTP API uses the root path of the logging folder specified in the IIS logging configuration and in there it creates the HTTPERR directory and sticks all the httperrxxx files there. 

つまり、ここ


んで、デフォルトやと、

%SystemRoot%\System32\LogFiles\HTTPERR 以下

アクセスログと同じ場所でええやん、と思うんだがここはやっぱり独自路線やなぁ・・。
変更もレジストリっぽいし。


こちらにも詳しく記事がありました。
puti se blog 〜   IISのエラーログはどこにあるのか?エラーログのパス。


続きを読む
posted by koteitan at 14:00| Comment(0) | TrackBack(0) | 情報処理 | このブログの読者になる | 更新情報をチェックする

2017年02月22日

HTML5でのストリーミングについて

このスライドがすごくよくまとめられていてよかった。



普及率、馬鹿にできないよね。
続きを読む
posted by koteitan at 16:55| Comment(0) | TrackBack(0) | 情報処理 | このブログの読者になる | 更新情報をチェックする

2017年02月21日

swap領域の変更

ファイルシステムを拡げるだけではあかんのやで・・。ヽ(`Д´)ノ

ちゃんとマニュアルにも書いてあるだろうに。
https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/6/html/Storage_Administration_Guide/s1-swap-adding.html

posted by koteitan at 18:01| Comment(0) | TrackBack(0) | その他備忘録 | このブログの読者になる | 更新情報をチェックする